新しいXMLノードを作成して、XMLファイルの既存のノードに追加したいとします。 具体的には、ファイルの構造は次のとおりです。新しいXMLノードを作成して、他のノードに子として追加する
<contract>
<trade></trade>
<trade></trade>
</contract>
私の考えでは、各<trade>
ノードを取得し、それに新しい子を追加することです。 この子は次のようになります。
<tradeSource></tradeSource>
私の質問があり、私はこの新しい子を追加する定義はどうすればよいですか? VBAで作成するのに適切なオブジェクトを見つけることはできません(ライブラリMSXML v3.0はプロジェクトで参照されていますが)、Web上のどこにでも新しいノードのサンプルを見つけることはできません。私の擬似コード:
XMLFile.Load(myFileFullName)
Set tradeNodes = XMLFile.getElementsByTagName("trade")
For Each trade In tradeNodes
Set newNode = ???? '<-- how to fill this?
trade.appendChild(newNode)
Next trade
複数の子要素を追加する必要がある場合は、ノードごとにグループ化された複雑な関連ロジックを持つ多くの兄弟/兄弟が、変換XML言語XSLTを検討してください。そして、はい、Excel VBAはXSLTを実行できます。 – Parfait