[英]How to add image tag in xml using excel vba 2007
I am generating xml using excel 2007 vba. 我正在使用excel 2007 vba生成xml。 After executing macro, I am getting this output 执行宏后,我得到此输出
but I need output like 但我需要像
I dont want < and > instead of < and > tags. 我不希望&lt和&gt而不是<和>标签。 The macro that I am using is 我正在使用的宏是
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"
End Sub 结束子
Please help me. 请帮我。
Thanks 谢谢
Rather than set the text of the images
collection, consider appending an image
child node and setting the href
attribute of it: 与其设置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
Output: 输出:
<?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.