EXCEL宏将XML文件作为XML表而不是只读工作簿打开

EXCEL宏将XML文件作为XML表而不是只读工作簿打开,excel,vba,Excel,Vba,我使用以下代码打开多个xml文件,但是它们是以只读工作簿的形式打开的,但是我要求它以xml表的形式打开,有什么建议吗 代码: Sub AllFolderFiles() Dim wb As Workbook Dim TheFile As String Dim MyPath As String MyPath = "C:\Documents and Settings\" ChDir MyPath TheFile = Dir("*.xml") Do

我使用以下代码打开多个xml文件,但是它们是以只读工作簿的形式打开的,但是我要求它以xml表的形式打开,有什么建议吗

代码:

Sub AllFolderFiles()
    Dim wb As Workbook
    Dim TheFile As String
    Dim MyPath As String
    MyPath = "C:\Documents and Settings\"
    ChDir MyPath
    TheFile = Dir("*.xml")
    Do While TheFile <> ""
        'Call Logs 'This calls for Macro2 to run
        Set wb = Workbooks.Open(MyPath & "\" & TheFile)
        MsgBox wb.FullName
        'wb.Close
        TheFile = Dir
    Loop
End Sub
Sub-AllFolderFiles()
将wb设置为工作簿
将文件变暗为字符串
将MyPath设置为字符串
MyPath=“C:\Documents and Settings\”
ChDir-MyPath
TheFile=Dir(“*.xml”)
当文件“”时执行此操作
“调用日志”这将调用Macro2运行
设置wb=Workbooks.Open(MyPath&“\”文件)
MsgBox wb.FullName
“wb.Close
TheFile=Dir
环
端接头

您需要使用
工作簿.OpenXML

Set wb=Workbooks.OpenXML(文件名:=MyPath&“\”&TheFile,LoadOption:=xlxmloadimportolist)

我不清楚您想要使用哪个LoadOption,但您可以从以下选项中进行选择:

  • xlxmloadimportolist
    自动创建XML列表并导入 将数据输入列表
  • xlxmloadmapxml
    将XML文件加载到XML源任务窗格中
  • xlxmloadopenxml
    以与Excel 2002相同的方式打开XML文件 打开XML文件(仅用于向后兼容)
  • xlxmloadpromptuser
    提示用户选择导入 方法

Sub AllFolderFiles()将wb作为工作簿将文件作为字符串将MyPath作为字符串将文件作为字符串将MyPath作为字符串将MyPath设置为String MyPath=“C:\Documents and Settings\anpuntam2fae\Desktop\Cilat\u devp\u Anand P”ChDir-MyPath文件设置为Dir(“*.xml”),而文件为“Call Logs”,则调用Macro2运行Set wb=Workbooks.Open(MyPath&“\”&TheFile)MsgBox wb.FullName'wb.Close TheFile=Dir Loop End subhank对于帮助nick,它起作用了,但是打开的文件的名称是按照Book1,book2,book3的顺序排列的,有没有一种方法可以保留这个名称?抱歉@user1966602我不确定我是否使用了下面的代码,来查找和替换更简单的文件