如何在 Excel 中快速批次匯入多個 CSV、文字或 XML 檔案?
在 Excel 中,您或許曾將活頁簿儲存為 CSV 檔案、純文字檔或 XML 檔案,但是否試過將資料夾中的多個 CSV/文字/XML 檔案批次匯入至單一活頁簿或工作表?本文將介紹幾種實用方法,助您快速完成這項任務。
使用 VBA 將資料夾中的多個純文本匯入至活頁簿的各個工作表
若要將資料夾中的純文字檔快速匯入活頁簿,您可以使用以下 VBA 程式碼。
1. 開啟一個空白活頁簿,並按下 Alt + F11 鍵,即可開啟 Microsoft Visual Basic for Applications 視窗!
2. 按一下插入 > 模組,並將 VBA 程式碼貼到模組視窗中。
VBA:將資料夾中的所有純文本匯入至活頁簿
Sub LoadPipeDelimitedFiles()
'UpdatebyKutoolsforExcel20151214
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\*.txt")
Do While xFile <> ""
xCount = xCount + 1
Sheets(xCount).Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" _
& xStrPath & "\" & xFile, Destination:=Range("A1"))
.Name = "a" & xCount
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 437
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileOtherDelimiter = "|"
.TextFileColumnDataTypes = Array(1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
xFile = Dir
End With
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files txt", , "Kutools for Excel"
End Sub 3. 按下 F5 鍵,或點擊執行按鈕以執行 VBA,隨即會彈出對話方塊,請選擇您要匯入純文字檔案的資料夾。請參閱螢幕截圖:

4. 按一下確定後,所選資料夾中的每個純文字檔都會匯入至目前工作簿的個別工作表中。請參閱螢幕截圖:



透過 KUTOOLS AI 解鎖 Excel 的神奇功能
- 智慧執行:透過簡易指令,輕鬆執行儲存格操作、分析資料,並建立圖表!
- 自訂公式:打造專屬公式,讓您的工作流程更順暢!
- VBA 編碼:輕鬆撰寫並套用 VBA 程式碼,立即提升工作效率!
- 公式解析:輕鬆掌握複雜公式!
- 文字翻譯:輕鬆打破試算表中的語言隔閡!
使用 VBA 將資料夾中的多個 csv 檔案匯入至單一工作表
若要將資料夾內所有 CSV 檔案匯入至同一張工作表,請使用以下 VBA 程式碼。
1. 開啟一個空白工作表,並按下 Alt + F11 鍵,即可開啟 Microsoft Visual Basic for Applications 視窗!
2. 按一下插入 > 模組,並將下方 VBA 程式碼貼到新開啟的模組視窗中。
VBA:將資料夾中的 csv 檔案匯入至單一工作表
Sub ImportCSVsWithReference()
'UpdatebyKutoolsforExcel20151214
Dim xSht As Worksheet
Dim xWb As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Set xSht = ThisWorkbook.ActiveSheet
If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then xSht.UsedRange.Clear
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\" & "*.csv")
Do While xFile <> ""
Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
Columns(1).Insert xlShiftToRight
Columns(1).SpecialCells(xlBlanks).Value = ActiveSheet.Name
ActiveSheet.UsedRange.Copy xSht.Range("A" & Rows.Count).End(xlUp).Offset(1)
xWb.Close False
xFile = Dir
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files csv", , "Kutools for Excel"
End Sub 3. 按下 F5 鍵,或按一下執行按鈕以執行 VBA,隨後將彈出對話方塊,請選擇您要匯入所有 CSV 檔案的資料夾。請參閱螢幕截圖:

4. 按一下確定後,系統會彈出對話方塊,詢問您是否要在匯入前清除作用中工作表的內容;此處我按一下是。請參閱螢幕截圖:

按一下是後,所選資料夾中的所有 CSV 檔案將立即匯入至當前工作表,並從 A 欄開始向右填入資料。請參閱螢幕截圖:


提示:若您希望將 CSV 檔案以水平方式置入工作表中,可使用下方的 VBA 程式碼。
Sub ImportCSVsWithReferenceI()
'UpdatebyKutoolsforExcel20151214
Dim xSht As Worksheet
Dim xWb As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Set xSht = ThisWorkbook.ActiveSheet
If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then
xSht.UsedRange.Clear
xCount = 1
Else
xCount = xSht.Cells(3, Columns.Count).End(xlToLeft).Column + 1
End If
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\" & "*.csv")
Do While xFile <> ""
Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
Rows(1).Insert xlShiftDown
Range("A1") = ActiveSheet.Name
ActiveSheet.UsedRange.Copy xSht.Cells(1, xCount)
xWb.Close False
xFile = Dir
xCount = xSht.Cells(3, Columns.Count).End(xlToLeft).Column + 1
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files csv", , "Kutools for Excel"
End Sub 
使用 VBA 將資料夾中的多個 xml 檔案匯入至單一工作表
若您希望將資料夾內所有 XML 檔案匯入至同一張工作表,可使用下方的 VBA 程式碼。
1. 選取您要放置匯入資料的空白工作表,並按下 Alt + F11 鍵,即可開啟 Microsoft Visual Basic for Applications 視窗。
2. 按一下插入> 模組,並將 VBA 程式碼貼到模組視窗中。
VBA:將資料夾內的 XML 檔案匯入至工作表。
Sub From_XML_To_XL()
'UpdatebyKutoolsforExcel20151214
Dim xWb As Workbook
Dim xSWb As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Application.ScreenUpdating = False
Set xSWb = ThisWorkbook
xCount = 1
xFile = Dir(xStrPath & "\*.xml")
Do While xFile <> ""
Set xWb = Workbooks.OpenXML(xStrPath & "\" & xFile)
xWb.Sheets(1).UsedRange.Copy xSWb.Sheets(1).Cells(xCount, 1)
xWb.Close False
xCount = xSWb.Sheets(1).UsedRange.Rows.Count + 2
xFile = Dir()
Loop
Application.ScreenUpdating = True
xSWb.Save
Exit Sub
ErrHandler:
MsgBox "no files xml", , "Kutools for Excel"
End Sub 3. 按一下執行按鈕,或按下 F5 鍵以執行 VBA,並在彈出的對話方塊中選擇文件夾。請參閱螢幕截圖:

4. 按一下確定,即可將所選資料夾中的所有 XML 檔案匯入至目前工作表。
使用 Kutools for Excel 將多個 xml/csv 檔案匯入或合併至單一工作表或活頁簿
如果您不熟悉 VBA,不用擔心!這裡為您推薦一款超實用工具——Kutools for Excel。透過其強大的合併功能,輕鬆將多個 XML 或 CSV 檔案快速整合至單一活頁簿或 Excel 工作表中,省時又高效!
安裝 Kutools for Excel 後,請依照下列步驟操作:(立即免費下載 Kutools for Excel!)
1. 啟動 Excel,並點選 KUTOOLS PLUS > 合併。請參閱下方螢幕截圖:
2. 在 「合併」的步驟 1 對話方塊中,依需求選擇一種分隔選項。請參閱下方螢幕截圖:
3. 按一下下一步,進入 「合併」的步驟 2;再按一下新增,即可從不同資料夾或單一資料夾中加入檔案至活頁簿清單。您也可在右側區段的工作表清單中,指定要合併的工作表。請參閱螢幕截圖:
4. 按一下下一步進入最後一個步驟的合併,並可指定合併選項。
5. 按一下完成後,將彈出對話方塊,提醒您選擇儲存新合併結果的位置。請參閱螢幕截圖:
6. 按一下儲存,所有新增的工作表便會合併至一個全新的單一工作表中!
提示:透過合併功能,您還能將多個資料夾或單一資料夾中的 CSV 檔案輕鬆整合至單一工作表或活頁簿中!
使用 Kutools for Excel 將每個工作表匯出為 csv/文字/pdf 至資料夾
若您想將每個工作表匯出為 CSV/文字/PDF 檔案至資料夾,Kutools for Excel 的分割工作簿功能可助您輕鬆達成!
在免費下載並安裝 Kutools for Excel 後,請依照下列步驟操作:
1. 開啟您要匯出工作表的活頁簿,並點選 KUTOOLS PLUS > 活頁簿 > 分割工作簿。請參閱螢幕截圖:

2. 在分割工作簿對話方塊中,您可以勾選欲匯出的工作表名稱(預設已全選),並勾選指定儲存格式,再從下方下拉清單中選擇所需的檔案類型。請參閱螢幕截圖:

3. 按一下分割,並在瀏覽資料夾對話方塊中選擇儲存分割檔案的位置。請參閱螢幕截圖:

4. 按一下確定,所有已勾選的工作表便會立即以新的檔案類型匯出至所選資料夾中!
相關文章:
最佳 Office 生產力工具
| 🤖 | KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行 | 產生程式碼| 建立自訂公式 | 分析資料並產生圖表| 呼叫增強函數…… |
| 熱門功能:尋找、醒目提示或標記重複值 | 刪除空白行 | 合併列或儲存格而不遺失資料 | 不使用公式的四捨五入…… | |
| 高級 LOOKUP:多重條件 VLookup | 多重數值 VLookup | 跨多個工作表 VLookup | 模糊查找…… | |
| 高級下拉列表:快速建立下拉式清單 | 相依式下拉式清單 | 多選下拉式清單…… | |
| 欄位管理員:新增指定數量的欄位|移動欄位|切換隱藏欄位的可見狀態|比較範圍與欄位…… | |
| 精選功能:網格聚焦 | 設計視圖 |增強編輯欄 | 工作簿與工作表管理員 | 資源庫(自動文字)| 日期提取 | 合併工作表 | 加密/解密儲存格 | 依清單傳送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體儲存格/斜體/刪除線……) ...... | |
| 頂尖 15 工具組:12 文字工具(添加文本,刪除特定字符,……)| 50+ 圖表 類型(甘特圖,……)| 40+ 實用公式(基於生日計算年齡,……)| 19 插入工具(插入二維碼,從路徑插入圖片,……)| 12 轉換工具(金額轉大寫,匯率轉換,……)| 7 合併和拆分工具(高級合併行,分割儲存格,……)|……以及更多 |
運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……
Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!
- 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
- 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
- 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!
所有 Kutools 增益集,一個安裝程式
Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!
- 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
- 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
- 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
- 30 天完整功能試用— 無需註冊,無需信用卡
- 超值之選— 比單獨購買各增益集更省費用