【发布时间】:2018-11-20 15:33:46
【问题描述】:
我有一个 SVG 文件,如果值不是使用 VBA 的整数,我的问题是删除文本元素。搜索并找到了这篇文章,但无法让它为我工作Remove a parent node and all children based on text value in child
<?xml version="1.0" ?>
<svg>
<image height="1980" width="1530" x="0" xlink:href="file.png" y="0"/>
<g stroke="#000000" stroke-width="1">
<text fill="#000000" font-family="Arial" font-size="15" x="645" y="532">A</text>
<text fill="#000000" font-family="Arial" font-size="19" x="1391" y="603">2</text>
<text fill="#000000" font-family="Arial" font-size="15" x="261" y="689">A</text>
<text fill="#000000" font-family="Arial" font-size="15" x="1008" y="749">4</text>
<text fill="#000000" font-family="Arial" font-size="14" x="1009" y="768">eD</text>
<text fill="#000000" font-family="Arial" font-size="16" x="117" y="765">A</text>
<text fill="#000000" font-family="Arial" font-size="14" x="199" y="1115">Q</text>
<text fill="#000000" font-family="Arial" font-size="19" x="1393" y="1113">3</text>
<text>DRA</text>
<text fill="#000000" font-family="Arial" font-size="19" x="1131" y="1189">(?YPI PL?I CEG)</text>
<text fill="#000000" font-family="Arial" font-size="19" x="340" y="1310">B</text>
<text fill="#000000" font-family="Arial" font-size="19" x="1223" y="1310">6</text>
<text fill="#000000" font-family="Arial" font-size="18" x="1222" y="1364">7</text>
<text fill="#000000" font-family="Arial" font-size="19" x="755" y="1484">(?YAL I6 PL)</text>
</g>
</svg>
代码
Public Sub xml()
Set XMLDoc = _
CreateObject("Microsoft.XMLDOM")
XMLDoc.Async = "False"
XMLDoc.Load ("C:\Users\1\g2.xml")
strVulid = "eD"
XPath = "svg/g[/text = '" & strVulid & "']"
For Each n In XMLDoc.SelectNodes(XPath)
n.ParentNode.RemoveChild (n)
Next
XMLDoc.Save "C:\Users\1\sample.xml"
MsgBox "done"
End Sub
【问题讨论】:
-
你能贴出你目前尝试过的代码吗?
-
添加了代码。请检查
-
运行时会发生什么?
-
什么都没有。 sample.xml 按原样复制源代码。