如何遍歷目錄中的文件並將數據複製到Excel中的主表中?
假設一個文件夾中有多個Excel工作簿,並且您想循環瀏覽所有這些Excel文件,並將數據從指定範圍的同名工作表中復製到Excel中的主工作表中,該怎麼辦? 本文詳細介紹了一種實現方法。
循環瀏覽目錄中的文件,然後使用VBA代碼將數據複製到主表中
如果要將範圍A1:D4中的指定數據從某個文件夾中的所有工作簿工作表1複製到母版工作表,請執行以下操作。
1.在工作簿中,您將創建一個主工作表,然後按 其他 + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。
2。 在裡面 Microsoft Visual Basic for Applications 窗口中,單擊 插入 > 模塊。 然後將下面的VBA代碼複製到代碼窗口中。
VBA代碼:循環瀏覽文件夾中的文件並將數據複製到主表中
Sub Merge2MultiSheets()
Dim xRg As Range
Dim xSelItem As Variant
Dim xFileDlg As FileDialog
Dim xFileName, xSheetName, xRgStr As String
Dim xBook, xWorkBook As Workbook
Dim xSheet As Worksheet
On Error Resume Next
Application.DisplayAlerts = False
Application.EnableEvents = False
Application.ScreenUpdating = False
xSheetName = "Sheet1"
xRgStr = "A1:D4"
Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
With xFileDlg
If .Show = -1 Then
xSelItem = .SelectedItems.Item(1)
Set xWorkBook = ThisWorkbook
Set xSheet = xWorkBook.Sheets("New Sheet")
If xSheet Is Nothing Then
xWorkBook.Sheets.Add(after:=xWorkBook.Worksheets(xWorkBook.Worksheets.Count)).Name = "New Sheet"
Set xSheet = xWorkBook.Sheets("New Sheet")
End If
xFileName = Dir(xSelItem & "\*.xlsx", vbNormal)
If xFileName = "" Then Exit Sub
Do Until xFileName = ""
Set xBook = Workbooks.Open(xSelItem & "\" & xFileName)
Set xRg = xBook.Worksheets(xSheetName).Range(xRgStr)
xRg.Copy xSheet.Range("A65536").End(xlUp).Offset(1, 0)
xFileName = Dir()
xBook.Close
Loop
End If
End With
Application.DisplayAlerts = True
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
備註:
1)。 在代碼中,“A1:D4“和”Sheet1”表示將所有Sheet1的A4:D1範圍內的數據複製到主表中。 還有“新表”是新創建的母版表的名稱。
2)。 特定文件夾中的Excel文件不應打開。
3。 按 F5 鍵來運行代碼。
4.在開幕 瀏覽 窗口,請選擇包含您要循環瀏覽的文件的文件夾,然後單擊 OK 按鈕。 看截圖:
然後,在當前工作簿的末尾創建一個名為“ New Sheet”的主工作表。 工作表中列出了所選文件夾中所有Sheet1的A4:D1範圍內的數據。
相關文章:
最佳辦公效率工具
Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%
- 重用: 快速插入 複雜的公式,圖表 以及您以前使用過的任何東西; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
- 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
- 合併單元格/行/列 不會丟失數據; 拆分單元格內容; 合併重複的行/列...防止細胞重複; 比較範圍...
- 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
- 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
- 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
- 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
- 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
- 超過 300 項強大的功能. 支持 Office / Excel 2007-2021 和 365。支持所有語言。 在您的企業或組織中輕鬆部署。 完整功能 30 天免費試用。 60 天退款保證。

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆
- 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
- 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
- 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!


#27551
網站主持人對此評論進行了最小化
即時報告
0
0

#27552
網站主持人對此評論進行了最小化
即時報告
0
0

#29000
網站主持人對此評論進行了最小化
即時報告
0
0

#29273
網站主持人對此評論進行了最小化
0
0

#29759
網站主持人對此評論進行了最小化
0
0

#29760
網站主持人對此評論進行了最小化
即時報告
0
0

#29761
網站主持人對此評論進行了最小化
0
0

#30716
網站主持人對此評論進行了最小化
0
0

#30717
網站主持人對此評論進行了最小化
即時報告
0
0

#32139
網站主持人對此評論進行了最小化
0
0

#35521
網站主持人對此評論進行了最小化
0
0

#36491
網站主持人對此評論進行了最小化
0
0

#36856
網站主持人對此評論進行了最小化
0
0

#36857
網站主持人對此評論進行了最小化
即時報告
0
0

#40723
網站主持人對此評論進行了最小化
0
0

#40752
網站主持人對此評論進行了最小化
即時報告
0
0

#40852
網站主持人對此評論進行了最小化
0
0

#41812
網站主持人對此評論進行了最小化
即時報告
0
0

#41735
網站主持人對此評論進行了最小化
0
0

#41833
網站主持人對此評論進行了最小化
即時報告
0
0
這裡還沒有評論