关于用VFP控制Excel

CLOSEALLoExcel=Createobject("Excel.application")ACCEPT"请输入模板的文件名:"TOKCLEARACCEPT"请输入该... CLOSE ALL
oExcel=Createobject("Excel.application")
ACCEPT"请输入模板的文件名:" TO K
CLEAR
ACCEPT"请输入该产生的文件名:" TO J
CLEAR
K=""
J=""
oExcel.Workbooks.Open("C:\Users\lenovo\Desktop\2010.12.10\22标\HK0+134.79--HK0+518.95\K.xls")
oExcel.ActiveWorkbook.SaveAs("C:\Users\lenovo\Desktop\2010.12.10\22标\HK0+134.79--HK0+518.95\J.xls")
oExcel.Visible=.T.
RETURN
哪位大侠能帮我看看上面问题出在哪里吗?
我想拥有的功能是 在vfp用户界面输入一份Excel标题,然后复制这份Excel产生另一份Excel
跪谢!!!
这问题重中之重是想把这两句中的K、J定义成功
oExcel.Workbooks.Open("C:\Users\lenovo\Desktop\2010.12.10\22标\HK0+134.79--HK0+518.95\K.xls")
oExcel.ActiveWorkbook.SaveAs("C:\Users\lenovo\Desktop\2010.12.10\22标\HK0+134.79--HK0+518.95\J.xls")
展开
 我来答
szgjr5011
2011-03-21 · TA获得超过445个赞
知道小有建树答主
回答量:994
采纳率:0%
帮助的人:847万
展开全部
CLOSE ALL
K=""
J=""
oExcel=Createobject("Excel.application")
ACCEPT"请输入模板的文件名:" TO K
CLEAR
ACCEPT"请输入该产生的文件名:" TO J
CLEAR
oExcel.Workbooks.Open("C:\Users\lenovo\Desktop\2010.12.10\22标\HK0+134.79--HK0+518.95\K.xls")
oExcel.ActiveWorkbook.SaveAs("C:\Users\lenovo\Desktop\2010.12.10\22标\HK0+134.79--HK0+518.95\J.xls")
oExcel.Visible=.T.
RETURN
追问
怎么还是不能将这里面的oExcel.Workbooks.Open("C:\Users\lenovo\Desktop\2010.12.10\22标\HK0+134.79--HK0+518.95\K.xls")
oExcel.ActiveWorkbook.SaveAs("C:\Users\lenovo\Desktop\2010.12.10\22标\HK0+134.79--HK0+518.95\J.xls")
K、J定义成我所需要的,还得恳请朋友帮忙一下。拜谢了
追答
你的问题可能是:文件路径与名称最好要用到变量!
K_WJ ="C:\Users\lenovo\Desktop\2010.12.10\22标\HK0+134.79--HK0+518.95\K.xls"
J_WJ ="C:\Users\lenovo\Desktop\2010.12.10\22标\HK0+134.79--HK0+518.95\J.xls"

下面二段是我目前在用的,都可用的,你参考一下:
******************************************* 1、自动处理
SBWJ=SYS(5)+SYS(2003) && 社保文件
SET PATH TO &PPPP,&SBWJ
WJMC= '&SBWJ\社保参保数据表.xls'

USE &SBWJ\社保汇总_STRU
COUNT TO AAA
USE
BBCD = "A1:E"+ALLT(STR(AAA+1,5))

eole=CREATEOBJECT('Excel.application') && 创建Excel对象  【】
eole.Workbooks.Open("&WJMC") && 打开指定工作簿
*eole.visible=.T. && 显示Excel窗口
eole.Range("A1:E1").select
eole.selection.HorizontalAlignment=3 && 水平方向 2左对齐,3居中,4右对齐
eole.selection.VerticalAlignment = 2 && 垂直方向 1靠上 ,2居中,3靠下

eole.Range("A:E").select
eole.Selection.Columns.AutoFit && 最适合的列宽
eole.ActiveSheet.Range(BBCD).Borders(1).LineStyle=1 && 设置四个边框线条的类型
eole.ActiveSheet.Range(BBCD).Borders(2).LineStyle=1 && 设置四个边框线条的类型
eole.ActiveSheet.Range(BBCD).Borders(3).LineStyle=1 && 设置四个边框线条的类型
eole.ActiveSheet.Range(BBCD).Borders(4).LineStyle=1 && 设置四个边框线条的类型

eole.ActiveWorkbook.Save && 存盘 offce2003下有的版本可能这条不认 eole.Workbooks.close && 关闭工作簿
eole.quit && 退出Excel

******************************************** 2、使用变量名,直接打开XLS文件
DECLARE INTEGER ShellExecute IN shell32.DLL INTEGER HWND,STRING, ;
STRING lpszFile, STRING, STRING, INTEGER
operate= "open"
ShellExecute(0,operate,"&WJMC",0,0,1)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gaphy2010
2011-03-21 · TA获得超过5848个赞
知道小有建树答主
回答量:786
采纳率:0%
帮助的人:816万
展开全部
要这么复杂吗?
LOCAL cFile1, cFile2

cFile1 = GETFILE("xls:xls")
cFile2 = PUTFILE("","","xls")

IF !EMPTY(cFile1) AND !EMPTY(cFile2) AND FILE(cFile1)
COPY FILE "&cFile1" TO "&cFile2"
ENDIF
追问
抱歉,我是VF菜鸟!
我现在需要的是在VF界面中输入(不需要去找寻,当然文件夹的路线已经订好)一个Excel标题(比方说01), 然后再输入一个标题(比方说02),程序就能利用01复制产生02,我再把02稍微修改一下保存。
再输入02、03就能利用02复制产生03···········
非常感谢!!!
追答
CLOSE ALL
oExcel=Createobject("Excel.application")
ACCEPT"请输入模板的文件名:" TO K
CLEAR
ACCEPT"请输入该产生的文件名:" TO J
CLEAR
oExcel.Workbooks.Open("C:\Users\lenovo\Desktop\2010.12.10\22标\HK0+134.79--HK0+518.95\" + K + ".xls")
oExcel.ActiveWorkbook.SaveAs("C:\Users\lenovo\Desktop\2010.12.10\22标\HK0+134.79--HK0+518.95\" + J + ".xls")
oExcel.Visible=.T.
RETURN
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-03-21
展开全部
*!* 6.更改Excel标题栏
oExcel.Caption="VFP应用程序调用Microsoft Excel"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式