[英]Open File Without Calling Filepath
我用的是excel VBA,我想按一個按鈕直接打開另一個文件,沒有“選擇文件窗口”的效果。
這是當前代碼:
Sub loadFile_click()
Workbooks.Open("C:\Users\GIL\Desktop\ObsReportExcelWorkbook.xlsx")
End Sub
在這種情況下,該文件與主文件位於同一文件夾中。
有沒有辦法不輸入文件路徑就可以做到這一點?
如果文件名是固定的,您可以使用 ActiveWorkbook.Path function 返回當前工作簿的路徑:
Dim FileName as string FileName = ActiveWorkbook.Path & "\myfile.xlsx
檢查您是否需要額外的斜杠字符。
如果文件與包含 VBA 宏的文檔位於同一文件夾中,請使用
ThisWorkbook.Path
例如:
Workbooks.Open(ThisWorkbook.Path & "\ObsReportExcelWorkbook.xlsx")
(即使文檔不再是活動文檔,或者您更改了當前目錄,這也有效)。
如果它在同一個文件夾中,那么
Workbooks.Open("ObsReportExcelWorkbook.xlsx")
或者
Workbooks.Open(".\ObsReportExcelWorkbook.xlsx")
應該管用。 我剛剛在 Excel VBA 中嘗試了兩者,都成功了。
Workbooks.Open ("D:\data\Mohit Singh\msk\data\book1.xlsx")
打開 ActiveWorkBook 的文件夾
Sub OpenFolderofProject()
Dim strMsg As String, strTitle As String
Dim sFolder As String
sFolder = ThisWorkbook.Path
strMsg = "Open WorkBook Folder Location? "
strTitle = "Folder Location:" & sFolder
If MsgBox(strMsg, vbQuestion + vbYesNo, strTitle) = vbNo Then
Else
Call Shell("explorer.exe " & sFolder, vbNormalFocus)
End If
End Sub
上下文:通常您對項目的修訂會不斷更改,或者您有一個自動生成的具有動態名稱的工作簿。 不管是什么情況。 這將知道您的工作簿路徑位置,並詢問您是否要打開該特定文件夾。
當我以編程方式在工作簿的同一文件夾中動態保存一堆 Excel 時,這對我非常有用。 因為不是將工作簿關閉/最小化到 go 到資源管理器。 我可以專注於該項目,而不會失去思路。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.