将特定名称的XML文件保存在VBA中的特定路径位置

时间:2019-06-03 19:17:52

标签: excel vba

我编写了一些代码,将我的Excel文件转换为XML数据格式,但是我无法找到一种方法来将新文档保存到具有特定名称的特定位置。

到目前为止,我已经尝试找到一些可以让我选择保存文件名的选项,但是到目前为止,我发现的所有内容只能让我在尝试保存文件名时输入路径名。像Document.Save这样的“路径”将只允许我保存到路径位置,而不会将我存储的文件名保留在变量中。

xslDoc.LoadXML "<?xml version=" & Chr(34) & "1.0" & Chr(34) & "?>" _
            & "<xsl:stylesheet version=" & Chr(34) & "1.0" & Chr(34) _
            & "                xmlns:xsl=" & Chr(34) & "http://www.w3.org/1999/XSL/Transform" & Chr(34) & ">" _
            & "<xsl:strip-space elements=" & Chr(34) & "*" & Chr(34) & " />" _
            & "<xsl:output method=" & Chr(34) & "xml" & Chr(34) & " indent=" & Chr(34) & "yes" & Chr(34) & "" _
            & "            encoding=" & Chr(34) & "UTF-8" & Chr(34) & "/>" _
            & " <xsl:template match=" & Chr(34) & "node() | @*" & Chr(34) & ">" _
            & "  <xsl:copy>" _
            & "   <xsl:apply-templates select=" & Chr(34) & "node() | @*" & Chr(34) & " />" _
            & "  </xsl:copy>" _
            & " </xsl:template>" _
            & "</xsl:stylesheet>"
    xslDoc.async = False
    doc.transformNodeToObject xslDoc, newDoc
    Dim Docname As String

    Docname = "VMM_" & SN.Text
    fileSaveName = GetSaveAsFilename(InitialFileName:=sItem * Docname, filefilter:="XML Files (*.xml),*xml")
    newDoc.SaveAs Filename:= fileSaveName, FileFormat:=xlTextPrinter, CreateBackup:False

我找到了可以帮助我将代码转换为XML的代码,这是它的第一部分,但是我找不到如何将SaveAs与newDoc一起使用的方式,后者是MSXML2.DOMDocument60。我正在尝试使用文件名Docname将其保存在名为sItem的位置,非常感谢任何帮助

0 个答案:

没有答案