主题:请问各位朋友:能不能追加纪录到已有的xls表里?
coffeenight
[专家分:230] 发布于 2010-04-28 14:46:00
请问各位朋友:
copy to aa type xl5
如果 xls表已经存在,能不能在已有的xls表的纪录最后自动空出2行,然后追加纪录
谢谢!
最后更新于:2010-04-28 14:50:00
回复列表 (共21个回复)
沙发
hw2007name [专家分:4790] 发布于 2010-04-28 14:51:00
不能,如果要实现此功能,就要创建EXCEL对象,VFP通过向EXCEL对象修改表格达到目的。
你可以参见一下“VFP完全控制EXCEL”的相关代码,网上找一下很多的。本论坛内好像也有这方面的代码。
板凳
coffeenight [专家分:230] 发布于 2010-04-28 14:53:00
置顶里有一篇 从当前任意DBF到xls的实现过程,看了很久也没找到实现的方法
因此特来向各位老师请教,该如何实现
3 楼
moz [专家分:37620] 发布于 2010-04-28 17:11:00
if !file("aa.xls") then
copy to aa type xl5
else
[quote]
aa1=fullpath("aa.xls")
aa2=fullpath(sys(2023)+"\aa~tmp.xls")
if file(aa2)
delete file (aa2)
endif
copy to (aa2) type xl5
xls1=createobject("excel.application")
xls2=xls1.Workbooks.Open(aa1)
xls3=xls1.Workbooks.Open(aa2)
xls3.sheets(1).rows("2:"+ALLTRIM(STR(xls3.sheets(1).usedrange.rows.count))).copy
xls2.sheets(1).cells(xls2.sheets(1).usedrange.rows.count+2,1).PasteSpecial(-4163)
xls2.save
xls1.quit
delete file (aa2)
[/quote]
endif
4 楼
coffeenight [专家分:230] 发布于 2010-04-28 18:42:00
非常感谢!我用的是 VFP6.0
不知道为什么,判断文件是否已经存在的语句没有效果:
if !file("&mc.xls") then 注:mc=ALLTRIM(表A.yxsmc)
若不加判断,运行中,出现
错误提示:未知的COM状态代码
5 楼
moz [专家分:37620] 发布于 2010-04-29 00:32:00
file(mc+".xls")
6 楼
hw2007name [专家分:4790] 发布于 2010-04-29 08:49:00
[quote]非常感谢!我用的是 VFP6.0
不知道为什么,判断文件是否已经存在的语句没有效果:
if !file("&mc.xls") then 注:mc=ALLTRIM(表A.yxsmc)
若不加判断,运行中,出现
错误提示:未知的COM状态代码
[/quote]
少一个点:
if !file("&mc..xls") then
7 楼
coffeenight [专家分:230] 发布于 2010-04-29 09:18:00
file(&mc+".xls") && 提示找不到变量
if !file("&mc..xls") then &&有效,只是为什么要有2个“..” ??
另:
xls1.quit
RELEASE xls1 &&需要加上这句,否则下面一句代码会出现无法存取的错误提示
delete file (aa2)
另外我想在导出的xls表的字段上一行添加说明性文字,应该怎么修改?
非常感谢
8 楼
moz [专家分:37620] 发布于 2010-04-29 22:46:00
看你是用替换用上瘾了,连什么叫变量都不知道了。
9 楼
coffeenight [专家分:230] 发布于 2010-04-29 23:37:00
惭愧。。。。。。
尝试
eole.cells(1,2).value="情况统计表"
eole.range("A2 ").value='情况统计表'
均出现 unkown name 的错误提示
10 楼
dbfox [专家分:490] 发布于 2010-04-30 07:46:00
[quote]看你是用替换用上瘾了,连什么叫变量都不知道了。[/quote]
楼主注意VFP中的宏代换
并学习一下EXCEL中录制宏与使用宏,你就可以用VFP为所欲为EXCEL.
我来回复