[英]VBScript code to keep Excel file open
我有一個VBScript代碼來打開excel文件,運行宏並關閉它。 精細。
現在,我唯一要更改的就是將文件保持打開狀態。
如果我刪除了兩行代碼xlApp.activewindow.close和xlApp.Quit,則無論如何該工作簿和該應用程序都是關閉的,但它們仍在后台打開(Excel進程在任務管理器中仍處於活動狀態)。 因此,以后無法通過再次調用腳本在同一文件上重新運行宏(這正是我要執行的操作)。
為什么?
這是代碼:
Option Explicit
On Error Resume Next
MyTest
Sub MyTest()
Dim xlApp
Dim xlBook
Dim fpath
Dim fname
' Excel application running? if not, open Excel
On Error Resume Next
Set xlApp = GetObject(, "Excel.Application")
If xlApp <> "Microsoft Excel" Then
Set xlApp = CreateObject("Excel.Application")
End If
Err.Clear
' correct Excel file open? if not, open it
fpath = "D:\Desktop\"
fname = "MyTest.xls"
xlApp.Workbooks(fname).Activate
If Err = 0 Then
' no error, so it has been possible to activate the workbook
Set xlBook = xlApp.Workbooks(fname)
Else
' unable to activate, so workbook was not open -> open it now
Set xlBook = xlApp.Workbooks.Open(fpath & fname, 0, True)
End If
Err.Clear
' now run the desired macro in the excel file
xlApp.Run "HelloWorld"
' WANT TO CHANGE THIS
xlBook.saved = True
xlApp.activewindow.close
' AND THIS
xlApp.Quit
Set xlBook = Nothing
Set xlApp = Nothing
End Sub
您只需要使新的Excel實例可見即可。 創建后立即執行以下操作:
xlApp.Visible = True
這行代碼將關閉您當前激活的工作簿(到目前為止,它是D:\\Destop\\MyTest.xls
);
xlApp.activewindow.close
此行將退出Excel應用程序;
xlApp.Quit
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.