サイトアイコン A1 Style

複数のXMLファイルをExcelで1シートにまとめる方法

複数のXMLファイルを、Excelで1シートにまとめる方法を紹介します。

XMLファイルには、Redmine公式サイトのチケットを使用しました。
ExcelのXML機能は、なかなか凄いですよ! 才才-!!w(゚o゚*)w

EIICHI

2021/01/17 記
Microsoft 365のExcelで記事を改訂しました。

XML要素と列の関係付け

Excelには、任意の列にXML要素を関係付けてインポートする機能があります。

まずは、Excelを起動して、XMLファイルのどれか一つを開きます。
「[XMLソース] 作業ウィンドウを使用する」を選択して[OK]をクリックします。

[OK]をクリックします。

XML要素のツリーが表示されます。

ツリーから抽出したいXML要素をドラッグして、セル上にドロップしていきます。
ドロップした名前は、自由に変更できます。
作業が終わったら、一度保存しておきましょう。

上のスクリーンショットでは、次のように設定しました。

列番号列名XML要素補足
Bidissueid
Cproject_idprojectid
Dtracker_idtrackerid
Estatus_idstatusid
Fpriority_idpriorityid
Gauthor_idauthorid
Hsubjectsubject
Idescriptiondescription
Jstart_datestart_date
Kdue_datedue_date
Ldone_ratiodone_ratio
Mestimated_hoursestimated_hours
Ncreated_oncreated_on
Oupdated_onupdate_on
Pclosed_onclosed_on
Qcategory_idcategoryid
Rfixed_version_idfixed_versionid
Sassigned_to_idassigned_toid

XMLの対応付けのプロパティ

XML要素のセルの上で右クリックします。
メニューの[XML]から[XMLの対応付けのプロパティ]をクリックします。

ダイアログが表示されます。レイアウトが自動調整されるのがイヤな場合は「データのレイアウト」のチェックを外しておきます。また、次のインポートで前のデータが上書きされないよう、インポート時の処理を「追加」に変更しておきます。

変更が終わったら[OK]をクリックして閉じます。

XMLファイルのインポート

もう一度、XML要素のセルの上で右クリックします。
次は、メニューの[XML]から[インポート]をクリックします。

ダイアログが表示されます。
インポートしたいXMLファイルを選択して[インポート]をクリックします。
複数のファイルをまとめて指定できます。

シート上にXMLファイルがまとめてインポートされました。

テーブルから標準の範囲に変換

以上で、複数のXMLファイルを1シートにまとめることができました。

インポートしたデータには、テーブル(Excelの機能)が設定されています。
このままでもよいのですが、解除する場合は次のようにします。

テーブルの解除は、すべてのXMLファイルをインポートしてから解除してください。
解除するとインポートできなくなります。

どこでもいいのでXML要素のセルをクリックします。
メニューの[テーブルツール – デザイン]から[範囲に変換]をクリックします。

メッセージが表示されるので[はい]ボタンをクリックします。

テーブルが解除されて、標準の範囲になりました。

最後までご覧いただきありがとうございます。
では、また。

モバイルバージョンを終了