使用Excel VBA从子文件夹加载所有XML文件可以通过以下步骤实现:
Sub LoadXMLFilesFromSubfolders()
Dim FolderPath As String
Dim FileName As String
Dim wb As Workbook
Dim ws As Worksheet
Dim XMLFile As Object
' 设置文件夹路径
FolderPath = "C:\YourFolderPath\"
' 创建新工作簿
Set wb = Workbooks.Add
' 循环遍历子文件夹
FileName = Dir(FolderPath & "*", vbDirectory)
Do While FileName <> ""
' 排除当前文件夹和上级文件夹
If FileName <> "." And FileName <> ".." Then
' 检查文件类型是否为XML
If Right(FileName, 4) = ".xml" Then
' 打开XML文件
Set XMLFile = CreateObject("MSXML2.DOMDocument")
XMLFile.Load (FolderPath & FileName)
' 在新工作簿中创建新工作表
Set ws = wb.Sheets.Add(After:=wb.Sheets(wb.Sheets.Count))
ws.Name = FileName
' 将XML数据导入新工作表
XMLFile.ChildNodes(0).CopyNode ws.Range("A1")
' 关闭XML文件
Set XMLFile = Nothing
End If
End If
' 获取下一个文件名
FileName = Dir
Loop
End Sub
FolderPath
变量中指定包含子文件夹的文件夹路径。确保路径以反斜杠(\)结尾。这样,你就可以使用Excel VBA从子文件夹加载所有XML文件了。
请注意,以上代码仅适用于加载XML文件。如果需要加载其他类型的文件,可以根据需要进行修改。另外,如果需要处理大量的XML文件,可能需要进行性能优化,例如使用数组来存储数据,以提高处理速度。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云