課綱中提到 2.2 編寫簡單的巨集
建立和執行巨集來自動執行任務。
瞭解如何錄製巨集。>>>這裡小編改一下,之前已經先教學了,就PASS了
前篇簡單提一下開啟工作簿、關閉工作簿、工作簿啟用與工作表、儲存格等
如何建立和執行巨集等等,小編寫了很多類似的操作,引用類似案例來實作一下
小編發過很多跟儲存格有關的操作,可以自己blog內用關鍵字搜搜
小編接下來以EXCEL 開啟檔案 VBA (一) FileDialog應用做實例操作。
....
先找到以下這行
Windows(WORKNAME).Activate '啟用新開檔案的檔案名稱
我們把要抓得資料的儲存格語法,類似如下:
例如:TEMP=ACTIVESHEET.CELLS(4,4)
每開啟一個檔案後,取得資料後要關閉檔案,所以要增加以下這行
Windows(WORKNAME).CLOSE
資料統一放到既有工作表得A行中,所以需要以下這行
ACTIVESHEET.RANGE("A" & I+1)=TEMP
儲存資料後並做清除資料動作
TEMP=""
用完整程式碼來練練:
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 '啟用新開檔案的檔案名稱
TEMP = ActiveSheet.Cells(4, 4)
Windows(WORKNAME).Close
Windows(Source).Activate '啟用目前作業中檔案名稱
ActiveSheet.Range("A" & I + 1) = TEMP
TEMP = ""
Next I
選4個檔案後,再來一步一步來,然後就全部跑完了
p.s 範例檔案就不分享了。
沒有留言:
張貼留言