簡體   English   中英

如何使用Excel VBA 2007在XML中添加圖像標簽

[英]How to add image tag in xml using excel vba 2007

我正在使用excel 2007 vba生成xml。 執行宏后,我得到此輸出 在此處輸入圖片說明

但我需要像

在此處輸入圖片說明

我不希望&lt和&gt而不是<和>標簽。 我正在使用的宏是

enter code here

Dim xmlDoc As New MSXML2.DOMDocument30
Dim objNode As MSXML2.IXMLDOMNode
Dim personNode As MSXML2.IXMLDOMNode
Dim imagesNode As MSXML2.IXMLDOMNode
Set objNode = xmlDoc.createNode(NODE_PROCESSING_INSTRUCTION, "xml", "")
xmlDoc.appendChild objNode
Set objNode = xmlDoc.createNode(NODE_ELEMENT, "root", "")
Set personNode = xmlDoc.createNode(NODE_ELEMENT, "person", "")
objNode.appendChild personNode
Set imagesNode = xmlDoc.createNode(NODE_ELEMENT, "images", "")
personNode.appendChild imagesNode
imagesNode.Text = "<image href=" & Chr(34) & "file:///Users/d.jahr/Desktop/XML           Booklet/Bilder/pic1.jpg" & Chr(34) & "/>"
xmlDoc.appendChild objNode
Set objNode = Nothing
MsgBox xmlDoc.XML
xmlDoc.Save ActiveWorkbook.Path & "\" & "result.xml"

結束子

請幫我。

謝謝

與其設置images集合的文本,不如考慮附加image子節點並設置其href屬性:

Sub test()
    Dim xmlDoc As New MSXML2.DOMDocument30
    Dim objNode As MSXML2.IXMLDOMNode
    Dim personNode As MSXML2.IXMLDOMNode
    Dim imagesNode As MSXML2.IXMLDOMNode

    Dim image1Node As MSXML2.IXMLDOMNode
    Dim namedItem As Object

    Set objNode = xmlDoc.createNode(NODE_PROCESSING_INSTRUCTION, "xml", "")
    xmlDoc.appendChild objNode
    Set objNode = xmlDoc.createNode(NODE_ELEMENT, "root", "")
    Set personNode = xmlDoc.createNode(NODE_ELEMENT, "person", "")
    objNode.appendChild personNode
    Set imagesNode = xmlDoc.createNode(NODE_ELEMENT, "images", "")
    personNode.appendChild imagesNode

    Set image1Node = xmlDoc.createNode(NODE_ELEMENT, "image", "")
    imagesNode.appendChild image1Node
    Set namedItem = xmlDoc.createAttribute("href")
    namedItem.Value = "file:///Users/d.jahr/Desktop/XMLBooklet/Bilder/pic1.jpg"
    image1Node.Attributes.setNamedItem namedItem

    xmlDoc.appendChild objNode
    Debug.Print xmlDoc.XML
End Sub

輸出:

<?xml version="1.0"?>
<root>
   <person>
      <images>
         <image href="file:///Users/d.jahr/Desktop/XMLBooklet/Bilder/pic1.jpg"/> 
      </images>
   </person>
</root>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM