回 帖 发 新 帖 刷新版面

主题:请问各位朋友:能不能追加纪录到已有的xls表里?

请问各位朋友:
copy to aa type xl5 
如果 xls表已经存在,能不能在已有的xls表的纪录最后自动空出2行,然后追加纪录
谢谢!

回复列表 (共21个回复)

11 楼

唉,急用,求解中

12 楼


您好!
 我是爱好者,ELX到DBF很想搞明白,看了你的代码后,还是云雾之中,能否把每条的意思写出来,实现什么目的,谢谢!
  您的代码:if !file("aa.xls") then 
    copy to aa type xl5
else

引用:

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)


endif
发到我的邮箱吧:WD_ZHX@163.COM
不胜感谢!

13 楼


您好!
   新手,能否将你的代码与引用部分的语句注释一下,写上每步要达到的目的、意图,不然我想学,但看起来还是云里雾里,发到我邮箱最好]wd_zhx@163.com,不胜感激

14 楼

别人都在忙着讨论怎样解决一个问题时,我却在想这个问题有没有解决的必要?能否用另外的思路解决问题?有没有别的办法能够达到同样的目的?
我总觉得给一个已有的EXCEL表追加几行似乎不具有普遍性,为此专门去研究代码的编写似乎不值得。因为程序是用来解决一类问题的,对于个别问题(形不成类的),似乎用不着编程。如果楼主真的需要经常性地给一个已存在的EXCEL表追加记录,为什么不干脆在一个DBF表中把所有要加的记录都加完,最后再copy to aa type xl5呢?
之所以要采用VFP,EXCEL,以及WORD等混合编程,目的是要发挥每种应用软件的长处,协调工作,完成既定的任务。就像羊是用来吃草的,老虎是用来吃鸡的,如果我们把老虎圈在笼子里,而挖空心思研究如何能使羊去吃鸡岂不很搞笑?

15 楼

回 爱好者: 你可以在baidu  搜索一下关键词: VFP 全面控制EXLCEL 

已经实现追加了
我现是想在我想在导出的xls表的字段的上一行添加说明性文字,应该怎么修改?
我也想过在DBF表里追加后再导出成XLS,问题是DBF表 ,没办法把说明性文字插入在字段之上啊


16 楼

.value=      单元格,注意到底在操作哪一个表是否明确
.AddComment  批注
.Comment.Text("")

17 楼

很同意14楼的说法,应该用VFP完成数据的处理,再转成XLS文件并处理格式,这样较容易实现数据格式的统一。硬要用XLS文件存贮数据,还不如直接用EXCEL来打开处理来得快。

18 楼

要象不能,如果要实现此功能,就要创建EXCEL对象,VFP通过向EXCEL对象修改表格达到目的。

19 楼

你把说明性文字先作为一个表(用SELECT  'gg','ggg','gggg' from 表1 WHERE RECNO()=1into cursor lsb 生成一个只有一行的临时表,这一行就是你要加的说明性文字,把gg用你的具体文字代替)copy成EXCEL表,再把数据表记录追加进去.因为你[quote]已实现追加了[/quote]
当然,我要做这件事,我不用上述方法,我会用在EXCEL中录制宏—编辑宏—复制宏—转换宏代码为VFP代码—用VFP代码操纵EXCEL对象完成任务。但这种方法对楼主可能有小难度。

20 楼

[quote]你把说明性文字先作为一个表(用SELECT  'gg','ggg','gggg' from 表1 WHERE RECNO()=1into cursor lsb 生成一个只有一行的临时表,这一行就是你要加的说明性文字,把gg用你的具体文字代替)copy成EXCEL表,再把数据表记录追加进去.因为你[quote]已实现追加了[/quote][/quote]
呵,我也是用这个方法实现的

[quote]当然,我要做这件事,我不用上述方法,我会用在EXCEL中录制宏—编辑宏—复制宏—转换宏代码为VFP代码—用VFP代码操纵EXCEL对象完成任务。但这种方法对楼主可能有小难度。[/quote]
唉,是啊,目前来说确实小有难度

我来回复

您尚未登录,请登录后再回复。点此登录或注册