如何在Excel中快速批量导入多个csv / text / xml文件?
在Excel中,您可能不得不将工作簿另存为csv文件,文本文件或xml文件,但是您是否曾经尝试将多个csv / text / xml文件从一个文件夹导入到工作簿或工作表中? 在本文中,我介绍了一些快速批量导入它们的方法。
使用VBA将文件夹中的多个文本文件导入到工作簿的每个工作表中
使用VBA将文件夹中的多个csv文件导入到一张工作表中
使用VBA将文件夹中的多个xml文件导入到一张工作表中
将多个 xml/csv 文件导入或组合到工作表或工作簿中 Kutools for Excel
将每张纸作为 csv/text/pdf 导出到文件夹中 Kutools for Excel
使用VBA将文件夹中的多个文本文件导入到工作簿的每个工作表中
要将文本文件从文件夹导入到工作簿中,可以使用VBA下面的命令对其进行快速处理。
1.启用空白工作簿,然后按 Alt + F11键 打开钥匙 Microsoft Visual Basic应用程序 窗口。
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
.FieldNa
mes = 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.然后点击 OK,并且所选文件夹中的每个文本文件都已导入到活动工作簿的一个工作表中。 看截图:
轻松地将多个工作表/工作簿合并为一个工作表或工作簿
在Excel中,将多个工作表或工作簿组合成一个工作表或工作簿可能很麻烦,但是使用 结合 功能 Kutools for Excel,您可以将数十个工作表/工作簿合并为一个工作表或工作簿,也可以通过几次单击将工作表合并为一个。
点击查看全功能 30 天免费试用!
Kutools for Excel:超过300个方便的Excel插件,免费试用,没有限制 30 天。
使用VBA将文件夹中的多个csv文件导入到一张工作表中
要将所有csv文件从一个文件夹导入到一张纸中,可以使用以下VBA代码。
1.启用空白工作表,然后按 Alt + F11键 打开钥匙 Microsoft Visual Basic应用程序 窗口。
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。 点击 OK,然后会弹出一个对话框,提醒您在导入之前是否清除了活动工作表的内容,请点击此处 是。 看截图:
点击后 是,所选文件夹中的所有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应用程序 窗口。
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。 点击 OK,并将所选文件夹中的所有XML文件导入到活动工作表中。
将多个 xml/csv 文件导入或组合到工作表或工作簿中 Kutools for Excel
如果您不熟悉VBA,请放心,在这里,我介绍一个方便的工具– Kutools for Excel 为了你。 凭借其强大 结合 实用程序,您可以将多个xml文件或csv文件快速组合到一个工作簿或一个Excel工作表中。
Kutools for Excel, 与超过 300 方便的功能,使您的工作更加轻松。
免费下载免费全功能 30- 天
安装后 Kutools for Excel,请执行以下操作:(免费下载 Kutools for Excel 现在!)
1. Active Excel,然后单击 Kutools 加 > 结合
。 查看截图:
2.然后 合并的第一步
对话框中,根据需要选择一个分离选项。 看截图:
3。 点击 接着 去 合并的第2步,单击“ 地址 将各种文件夹中的文件或一个文件夹中的文件添加到 工作簿 列表,还可以指定要从中合并的图纸 工作表
右侧部分列表。 看截图:
4。 点击 接着 到最后一步 结合,然后您可以指定合并选项。
5。 点击 完成
,会弹出一个对话框,提醒您选择一个位置来保存新的合并结果。 看截图:
6。 点击 优惠
。 所有添加的工作表都已合并为一个新的工作表。
提示: 结合,您也可以将多个 CSV文件 在一个工作表或工作簿中形成多个文件夹或一个文件夹。
将多个XML / CVS文件合并到一个工作表/工作簿中
将每张纸作为 csv/text/pdf 导出到文件夹中 Kutools for Excel
如果要将每张工作表作为csv / text / pdf文件导出到文件夹, Kutools for Excel“ 拆分工作簿 实用程序可以帮您一个忙。
后 免费安装 Kutools for Excel,请执行以下操作:
1.启用要导出其工作表的工作簿,然后单击 Kutools 加 > 工作簿 > 拆分工作簿。 看截图:
2.在 拆分工作簿 对话框中,您可以检查您需要导出的工作表名称,默认情况下,所有工作表均已选中,然后检查 指定保存格式 然后从下拉列表中选择要另存为的文件格式。 看截图:
3。 点击 分裂 然后选择一个文件夹将拆分文件保存在 浏览文件夹 对话框,请参见屏幕截图:
4。 点击 OK,现在所有选中的工作表都将作为新文件格式导出到所选文件夹中。
将每个工作表导出为单个XML / CSV / TXT / PDF文件
相关文章:
如何在Excel中将超链接转换为纯文本?
如何在Excel中将十进制数转换为二进制/八进制/十六进制数,反之亦然?
如何在Excel中插入实时汇率?
最佳办公生产力工具
将小时转化为分钟 Kutools for Excel!
准备好增强您的 Excel 任务了吗? 利用的力量 Kutools for Excel - 您终极的节省时间的工具。 简化复杂的任务并像专业人士一样浏览数据。 以闪电般的速度体验 Excel!
为什么需要 Kutools for Excel
🛠️ 超过 300 项强大功能: Kutools 包含 300 多项高级功能,可简化您在 1500 多种场景中的工作。
📈 卓越的数据处理能力:合并单元格、删除重复项并执行高级数据转换 - 所有这些都不费吹灰之力!
⏱️ 高效的批量操作:当你可以聪明地工作时,为什么还要付出额外的努力呢? 轻松批量导入、导出、组合和调整数据。
📊 可定制的图表和报告:访问各种附加图表并生成富有洞察力的报告。
🗄️ 强大的导航窗格:通过强大的列管理器、工作表管理器和自定义收藏夹获得优势。
📝 七种类型的下拉列表:通过各种功能和类型的下拉列表使数据输入变得轻而易举。
🎓 用户友好:对于初学者来说轻而易举,对于专家来说是一个强大的工具。
***
***
*** ***
Office Tab 为 Office 带来选项卡式界面,让您的工作更轻松
在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
每天将您的工作效率提高50%,并减少数百次鼠标单击!