エクセルでXMLファイルを読み書きする[ExcelのVBA]
事前準備
サンプルのXMLスキーマ(XML Schema)ファイルをダウンロードします。XMLスキーマとはXMLの文章構造を定義するスキーマファイルとなります。
excel_vba_3.xsd 677 バイト (677 バイト)
ファイルの中身はこのようになっています。
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Root">
<xs:complexType>
<xs:sequence>
<xs:element name="レコード" maxOccurs="unbounded">
<xs:complexType>
<xs:all>
<xs:element name="果物">
<xs:simpleType>
<xs:restriction base="xs:string" />
</xs:simpleType>
</xs:element>
<xs:element name="価格">
<xs:simpleType>
<xs:restriction base="xs:integer" />
</xs:simpleType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
※詳細はXMLスキーマ(Wikipedeia)やXML Schemaで単純型要素を定義する(@IT)をご覧ください。
操作対象
リボンの「開発」タブの緑線で囲まれた部分を使用します。
XMLの読み書き
エクセルでユーザーがXMLを直接編集できるようにします。
※記事の都合上、インポートからではなくXMLスキーマ、エクスポート、インポートの順で解説します。
XMLスキーマの読み込み
最初に「ソース」アイコンを押します。すると画面右側に「XMLソース」が表示されます。
次に「XMLの対応付け」ボタンをクリックします。
「XMLの対応付け」ダイアログが表示されますので「追加」ボタンで先程、ダウンロードした「excel_vba_3.xsd」を読み込んでOKボタンを押します。
すると、「XMLソース」に読み込んだスキーマファイルが表示されます。
XMLのエキスポート(保存)
次に「Root」をドラッグしてB2付近のセルへドロップします。
そして、緑枠で囲まれた部分でマウスを押しながら下へ移動してテーブルを3つぐらいにします。

次にテーブルにデータを入力します。
「エクスポート」アイコンを押して任意のファイル名でXMLファイルを作成します。
※ここで次章の「XMLのインポート」をする為にテーブルのデータをクリアします。
XMLのインポート(読み込み)
「インポート」アイコンで先程、作成したXMLファイルを読み込みます。

これによりXMLの知識がなくてもエクセルがあればXMLファイルを簡単に編集する事が可能となりました。
対応付けのプロパティ
「対応付けのプロパティ」アイコンをクリックするとXMLに関する設定が出来ます。
拡張パック
「拡張パック」アイコンをクリックするとXML拡張パックに関する設定が出来ます。
データの更新
「データの更新」アイコンをクリックするとインポートされたファイルから最新情報を読み込みます。
ドキュメントパネル
「ドキュメントパネル」アイコンをクリックすると「ドキュメント情報パネル」をカスタマイズする事が可能です。
「ドキュメント情報パネル」は「ファイル」メニューの「情報」の「プロパティ」「ドキュメントパネルを表示」
をクリックすると表示されるパネルの事です。
メモ
Excelの画面操作
Visual Basic(VBA)の表示とアドイン
ActiveXコントロールの使い方
エクセルでXMLファイルを読み書きする
エクセル講座のクイックリンク
関連記事
プチモンテ ※この記事を書いた人
![]() | |
![]() | 💻 ITスキル・経験 サーバー構築からWebアプリケーション開発。IoTをはじめとする電子工作、ロボット、人工知能やスマホ/OSアプリまで分野問わず経験。 画像処理/音声処理/アニメーション、3Dゲーム、会計ソフト、PDF作成/編集、逆アセンブラ、EXE/DLLファイルの書き換えなどのアプリを公開。詳しくは自己紹介へ |
| 🎵 音楽制作 BGMは楽器(音源)さえあれば、何でも制作可能。歌モノは主にロック、バラード、ポップスを制作。歌詞は抒情詩、抒情的な楽曲が多い。楽曲制作は🔰2023年12月中旬 ~ | |









