利用 GetObject 方法開啟Excel文件
Sub GetWorkbook() Dim wbWorkFile As Workbook Set wbWorkFile = GetObject("D:\test.xlsx") ' wbWorkFile.Windows(1).Visible = True ' 這種方法開啟的檔案是隱藏的,如果需要顯示,則設定Visible值為ture wbWorkFile.Close False Set wbWorkFile = Nothing End Sub
利用 Open 方法開啟Excel文件Sub OpenWorkbook() Dim wbWorkFile As Workbook Set wbWorkFile = Workbooks.Open("D:\test.xlsx") wbWorkFile.Windows(1).Visible = False wbWorkFile.Close False Set wbWorkFile = NothingEnd Sub
延伸其擴充套件方法:
GetObject封裝方法,可以作為共通FunctionSub GetWorkbook() Dim objExcel As Object ' 用於存放Microsoft Excel 引用的變數。 Dim blnExcelWasNotRunning As Boolean ' 用於最後釋放的標記。 ' 測試 Microsoft Excel 的副本是否在執行。 On Error Resume Next ' 延遲錯誤捕獲。 ' 不帶第一個引數呼叫 Getobject 函式將返回對該應用程式的例項的引用。如果該應用程式不在執行,則會產生錯誤。 Set objExcel = Getobject(, "Excel.Application") If Err.Number <> 0 Then blnExcelWasNotRunning = True Err.Clear ' 如果發生錯誤則要清除 Err 物件。 Set objExcel = Getobject("C:\excel.xlsx") ' 將物件變數設為對要看的檔案的引用。 ' 設定其 Application 屬性,顯示 Microsoft Excel。然後使用 objExcel 物件引用的 Windows 集合顯示包含該檔案的實際視窗。 objExcel.Application.Visible = True objExcel.Parent.Windows(1).Visible = True ' 在此處對檔案進行操作。 ' ... ' 如果在啟動時,Microsoft Excel 的這份副本不在執行中,則使用 Application 屬性的 Quit 方法來關閉它。 ' 注意,當試圖退出 Microsoft Excel 時,標題欄會閃爍,並顯示一條訊息詢問是否儲存所載入的檔案。 If blnExcelWasNotRunning = True Then objExcel.Application.Quit End IF Set objExcel = Nothing ' 釋放對該應用程式End Sub
OpenWorkbook封裝方法,可以作為共通FunctionFunction OpenWorkbook(ByVal strWorkbookFilePath As String) Dim wb As Workbook Dim fileName As String fileName = Dir(strWorkbookFilePath) On Error Resume Next Set wb = Workbooks(fileName) On Error GoTo 0 If wb Is Nothing Then Set wb = Workbooks.Open(strWorkbookFilePath) End If Set OpenWorkbook = wbEnd Function
VBA程式設計神器放送
VBA程式設計神器 VBA程式碼助手 可以極大提高程式設計速度,降低程式設計門檻歡迎使用
用法 輸入 字典+空格 即可看到如下提示 也可輸入 dic+空格 zd+空格 均可得到提示
本提示資料庫可完全自定義!
最新評論