你也可以使用,而不是一個宏觀VBS的所有屬性。語言幾乎完全相同,您的腳本將獨立於您的工作簿。
至於確定使用哪個文件來運行宏(沒有數據和代碼的例子,它很難太具體),你可以瀏覽你想要的文件。
Dim objShell
Set objShell = CreateObject("Shell.Application")
Dim strFileName
Dim strFilePath
Dim dPicker
Set dPicker = objShell.BrowseForFolder(0, "Choose a file:", &H4000)
strFilePath = dPicker.self.Path 'will give you the file path of the file you choose,
'which you can then use to open/access the file with
'the data you need.
'Code
Set dPicker = Nothing
如果您想堅持一個宏,您可以檢出FileDialog對象以使用VBA中的文件選取器。
要獲得VBA打開的工作簿的文件名和/或路徑,使用
ActiveWorkbook.Name
ActiveWorkbook.Path
希望這有助於!
嗨,所以現在你有2個工作簿,其中一個隱藏着宏(讓我們將其命名爲A),另一個可見,讓我們將其命名爲B. 所以你想調用宏中的A ? – Larry
嘿拉里, 就是這樣。爲了給你更多的背景: 我們有一個系統輸出一個電子表格,裏面裝滿了數據(A),另一個電子表格裏面有一系列公式(B)。目前,用戶必須通過A,複製正確的字段並將它們粘貼到B. 我已經編寫了一個可以自動執行此過程的宏,因此他們現在打開A,點擊快捷方式,宏定位並打開B,然後在A中找到相關數據並將其粘貼到B. –
對不起仍然有點不清楚的情況和你想要什麼,我們可以繼續討論http://chat.stackoverflow.com/rooms/info/21244/http-stackoverflow-com-questions-13909747-vba -excel-2003-macro-independent-from?tab = general? – Larry