回 帖 发 新 帖 刷新版面

主题:用VFP控制EXCEL多次复制粘贴问题

朋友们,帮我解决下,用VFP控制EXCEL多次复制粘贴时,都会出现下图的提示框,能不能不出现这框?我写的代码是:
        myExcel1=CreateObject("Excel.Application")
        myExcel1.workbooks.open("e:\wems\data\wems1.xls")
        myExcel1.worksheets('wems1').activate
        myExcel1.Range('a1:bz3000').copy 
        myExcel1.quit
        myExcel=CreateObject("Excel.Application")
        myExcel.workbooks.open("e:\wems\总表.xls")
        myExcel.worksheets('分表1').activate
        myExcel.ActiveSheet.Paste
        myExcel.activeworkbook.save()
        myExcel.quit
release myExcel1
release myExcel
        ***********
        myExcel1=CreateObject("Excel.Application")
        myExcel1.workbooks.open("e:\wems\data\wems1a.xls")
        myExcel1.worksheets('wems1a').activate
        myExcel1.Range('a1:bz3000').copy 
        myExcel1.quit
        myExcel=CreateObject("Excel.Application")
        myExcel.workbooks.open("e:\wems\总表.xls")
        myExcel.worksheets('分表2').activate
        myExcel.ActiveSheet.Paste
        myExcel.activeworkbook.save()
        myExcel.quit
release myExcel1
release myExcel
        ***********
 

回复列表 (共9个回复)

沙发

试试:
    .DisplayAlerts = .F.
    .ActiveWorkbook.close(.t.)

板凳

谢谢
请教下,把这二句插入到那个位置?我试了下,没成功。

3 楼


myExcel1=CreateObject("Excel.Application")
        myExcel1.workbooks.open("e:\wems\data\wems1.xls")
        myExcel1.worksheets('wems1').activate
        myExcel1.Range('a1:bz3000').copy 
        myExcel1.quit
        myExcel=CreateObject("Excel.Application")
        myExcel.workbooks.open("e:\wems\总表.xls")
        myExcel.worksheets('分表1').activate
        myExcel.ActiveSheet.Paste
        myExcel.activeworkbook.save()
myExcel.DisplayAlerts = .F.
myExcel.ActiveWorkbook.close(.t.)
        myExcel.quit
release myExcel1
release myExcel
  

这样放吗?试过还是不知哦

4 楼

没有验证,楼主试试:
        myExcel1=CreateObject("Excel.Application")
        myExcel1.workbooks.open("e:\wems\data\wems1.xls")
        myExcel1.worksheets('wems1').activate
        myExcel1.Range('a1:bz3000').copy 
        myExcel.workbooks.open("e:\wems\总表.xls")
        myExcel.worksheets('分表1').activate
        myExcel.ActiveSheet.Paste
        myExcel.DisplayAlerts = .F.
        myExcel.ActiveWorkbook.close(.t.)
        myExcel1.workbooks.open("e:\wems\data\wems1a.xls")
        myExcel1.worksheets('wems1a').activate
        myExcel1.Range('a1:bz3000').copy 
        myExcel.workbooks.open("e:\wems\总表.xls")
        myExcel.worksheets('分表2').activate
        myExcel.ActiveSheet.Paste
        myExcel.ActiveWorkbook.close(.t.)
        myExcel.quit
release myExcel1
release myExcel

5 楼

Application.CutCopyMode = False

6 楼

谢谢分享!
您正在看的文章转载雪影网络:[url=http://www.fjfairh.cn]http://www.fjfairh.cn[/url]
原文地址:[url=http://www.fjfairh.cn/news/2010516/43.html]http://www.fjfairh.cn/news/2010516/43.html[/url]

7 楼

楼主自己验证,5楼代码应该是正解。

8 楼

请教:这句放在那里啊?

9 楼

据我简单测试,这两句命令作用相同。
        myExcel1=CreateObject("Excel.Application")
        myExcel1.workbooks.open("i:\wems1.xls")
        myExcel1.worksheets('wems1').activate
        myExcel1.Range('a1:bz3000').copy 
        myExcel1.workbooks.open("i:\总表.xls")
        myExcel1.worksheets('分表1').activate
        myExcel1.Rows("1:1").Select 
        myExcel1.ActiveSheet.Paste
        myExcel1.worksheets('分表2').activate
        myExcel1.Rows("1:1").Select 
        myExcel1.ActiveSheet.Paste
        myExcel1.DisplayAlerts = .F.
*        myExcel1.CutCopyMode = .F.  &&与上一句命令作用相同
        myExcel1.ActiveWorkbook.close(.t.)
        myExcel1.quit
release myExcel1

我来回复

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