close

教學:https://riverfootmark.blogspot.com/2018/12/excel-vba-filedialog.html

開啟EXCEL 開發人員教學:

 

 透過上列網址文件教學,我們可以在"命令按鈕"中貼入以下 VBA CODE。

 Dim FILE_OPEN As FileDialog '宣告FILE_OPEN為檔案對話框

 Set FILE_OPEN= Excel.Application.FileDialog(msoFileDialogFilePicker) '設定FILE_OPEN為選取檔案功能 

補充說明:"msoFileDialogFilePicker"指選取檔案若要選取資料夾請改

為"msoFileDialogFolderPicker "

FILE_OPEN.InitialFileName = Excel.ActiveWorkbook.Path '對話框開始目錄的設定

FILE_OPEN.Filters.Add "Excel File", "*.xls*" '設定對話框要顯示的副檔名

 FILE_OPEN.Filters.Add "所有檔案", "*.*"

FILE_OPEN.Show '顯示對話框

 

圖1.對話框產生

 

但僅僅這樣還不夠,還需要以下的VBA CODE 才能開啟檔案歐

 For i = 1 To FILE_OPEN.SelectedItems.Count

 Source = Excel.ActiveWorkbook.NAME '儲存目前作業中檔案名稱

 FILE_OPEN_PATH = FILE_OPEN .SelectedItems(i) '取的檔案路徑

 Workbooks.Open Filename:=FILE_OPEN_PATH '開啟案路徑

 WORKNAME = Excel.ActiveWorkbook.NAME '儲存新開檔案的檔案名稱

 Windows(WORKNAME).Activate '啟用新開檔案的檔案名稱

 Windows(Source).Activate '啟用目前作業中檔案名稱

 NEXT I

 

 完整版:

 

 Dim FILE_OPEN As FileDialog '宣告FILE_OPEN為檔案對話框

 Set FILE_OPEN= Excel.Application.FileDialog(msoFileDialogFilePicker)

'設定FILE_OPEN為選取檔案功能

 FILE_OPEN.InitialFileName = Excel.ActiveWorkbook.Path '對話框開始目錄的設定

 FILE_OPEN.Filters.Add "Excel File", "*.xls*" '設定對話框要顯示的副檔名

 FILE_OPEN.Filters.Add "所有檔案", "*.*"

FILE_OPEN.Show '顯示對話框

 For i = 1 To FILE_OPEN.SelectedItems.Count

Source = Excel.ActiveWorkbook.NAME '儲存目前作業中檔案名稱

 FILE_OPEN_PATH = FILE_OPEN .SelectedItems(i) '取的檔案路徑

 Workbooks.Open Filename:=FILE_OPEN_PATH '開啟案路徑

 WORKNAME = Excel.ActiveWorkbook.NAME '儲存新開檔案的檔案名稱

 Windows(WORKNAME).Activate '啟用新開檔案的檔案名稱

 Windows(Source).Activate '啟用目前作業中檔案名稱

 NEXT I

 

功能說明:透過對話框打開一個或多個檔案後,自動開啟檔案,至於要開啟檔案作那些"加工",就看需求作增加了。

arrow
arrow
    文章標籤
    EXCEL VBA EXCEL VBA
    全站熱搜

    a200271071 發表在 痞客邦 留言(0) 人氣()