繁体   English   中英

如何使用 VBA 从 XML 文件中提取数据到 Excel 工作表

[英]How to fetch data from XML file to Excel sheet using VBA

我使用以下代码将数据从 XML 获取到 Excel。 但问题是,结果是在新工作簿“ Book1 ”中打开的。 但是我想在我有这个宏的同一个 Excel 中的特定工作表中获得结果。
请注意,我不想在代码中创建架构,因为所有 XML 的架构都发生了变化。 下面提到的代码不需要指定架构。 它可以使用正确的列名将结果转储到新的 Excel 工作表中。 所以,请让我知道如何在同一个工作簿中的sheet2中获得结果?

Sub ImportXMLtoList()
 Dim strTargetFile As String
 Application.DisplayAlerts = False
 strTargetFile = "C:\example.xml"
 Workbooks.OpenXML Filename:=strTargetFile, LoadOption:=xlXmlLoadImportToList
 Application.DisplayAlerts = True

End Sub
Sub ImportXMLtoList()
Dim strTargetFile As String
Dim wb as Workbook

     Application.Screenupdating = False
     Application.DisplayAlerts = False
     strTargetFile = "C:\example.xml"
     Set wb = Workbooks.OpenXML(Filename:=strTargetFile, LoadOption:=xlXmlLoadImportToList)
     Application.DisplayAlerts = True

     wb.Sheets(1).UsedRange.Copy ThisWorkbook.Sheets("Sheet2").Range("A1")
     wb.Close False
     Application.Screenupdating = True


End Sub

我创建了一个简单的xmlmap。 我需要一个代码来将 xml 数据导入到 excel(右键单击-xml-import),从 xml 或其他文件中获取数据。 我想保留我创建的 xmlmap,只需将我的 xlxs 中的数据替换为来自另一个 xlm 的数据。

'Select the file
Fname = Application.GetOpenFilename(FileFilter:="xml files (*.xml), *.xml", MultiSelect:=False)

'Check if file selected
If Fname = False Then
    Exit Sub
    Else
Workbooks.Open Filename:=Fname
End If

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM