Set oSheet = oBook.Sheets("sheet2")
oSheet.Copy AFTER:=Sheets(2) oBook.Close (False)
Set oSheet = Nothing
Set oBook = Nothing
oExcel.Quit
Set oExcel = Nothing
把oSheet.Copy AFTER:=Sheets(2)删除后运行,进程里就没有EXCEL了,为什么啊? 如何解决?
谢谢!
oSheet.Copy AFTER:=Sheets(2) oBook.Close (False)
Set oSheet = Nothing
Set oBook = Nothing
oExcel.Quit
Set oExcel = Nothing
把oSheet.Copy AFTER:=Sheets(2)删除后运行,进程里就没有EXCEL了,为什么啊? 如何解决?
谢谢!
'xlAutoOpen=1;xlAutoClose=2
oBook.RunAutoMacros (1) '运行EXCEL启动宏
oBook.RunAutoMacros (2) '运行EXCEL关闭宏
Dim PageAll, PageOne As Integer
Dim oExcel As Excel.Application
Dim oBook As Excel.Workbook
Dim oSheet As Excel.Worksheet
Set oExcel = CreateObject("Excel.Application")
Set oBook = oExcel.Workbooks.Open("c:\book1.xls")
Set oSheet = oBook.Worksheets("sheet2") oSheet.Copy AFTER:=Sheets(2) oBook.Close (False)
Set oSheet = Nothing
Set oBook = Nothing
oExcel.Quit
Set oExcel = Nothing
End Sub
oSheet.Copy AFTER:=oBook.Worksheets(2)就行了在VB中调用VBA时,尽量不用到Active类似的对象,如activebook,activesheet,等
你代码中用到了Sheets前面没有定义,它默认引用了activebook.worksheets对象引起进程没有关闭以上是我自已在工作中遇到一些问题总结出来的,也不知道对不对,仅供参考