こういうサンプルを、このブログで、書いた気がしたけど、
見つからなかったので、書いておきます。
(まじめに探してないので、もし、あって、ダブっちゃってたらごめん)
■仕様
フォルダを選択するダイアログを出し、
指定されたフォルダの下に、test.xmlというフォルダ名で
以下の内容のXMLファイルを書き出す
<?xml version="1.0"?> <rss version="2.0"> <channel/> </rss> |
(上記<>は、本当は半角です)
■下準備
ここのブログにあるように、参照設定をひらいたら、以下のようにMicrosoft XMLの、どれかひとつをチェックします。
■ソース
こんなかんじ
Sub Macro1() Dim fDlg As FileDialog Dim fname As String Dim xdoc As New DOMDocument Dim xtree As IXMLDOMElement Dim zyu As IXMLDOMElement Dim pi As IXMLDOMProcessingInstruction 'フォルダのダイアログを出す Set fDlg = Application.FileDialog(msoFileDialogFolderPicker) fDlg.InitialFileName = "C:¥" 'ファイル名決定 If (fDlg.Show = -1) Then 'OKのとき fname = fDlg.SelectedItems(1) & "¥test.xml" Else fname = "" End If Set fDlg = Nothing If (fname = "") Then Exit Sub End If 'XMLのはじまりを書く Set pi = xdoc.createProcessingInstruction("xml", "version='1.0'") Call xdoc.appendChild(pi) '先頭のノード作成 Set xtree = xdoc.createElement("rss") Call xtree.setAttribute("version", "2.0") '属性設定 Call xdoc.appendChild(xtree) 'その下のノードの作成 Set channel = xdoc.createElement("channel") Call xtree.appendChild(channel) '保存 xdoc.Save (fname) End Sub |
(上記 ¥ < > は、本当は半角)
■参考にしたサイト
http://www2.moug.net/bbs/exvba/20061207000017.htm
(フォルダダイアログの出し方:「あられすき」さんの)