[変換/Excel] 複数のXMLファイル(Redmineチケット)をブックにまとめる方法

17548076604_2dbbd37624_b

今回は、複数のXMLファイルを一つのExcelブックにまとめる方法を紹介します。

先日、Redmine公式サイトから取得したチケットのXMLファイルは152個にもなりました。ちょこっとURLを変更して表示された内容をファイル保存するだけの単純作業でしたが、152回も繰り返してたんですね(汗)

これらのXMLファイルですが、最終的に『A5:SQL Mk-2』などを使ってMySQL(Redmine)に投入するには、CSVファイルにする必要があります。また、途中データ変換などが必要かもしれませんので、この段階で一つのExcelブックにまとめることにしました。

ExcelのXMLに関連する機能は、なかなか凄いですよ! 才才-!!w(゚o゚*)w

スポンサーリンク

XML要素との対応付け

Excelには、シートの任意の列にXML要素を対応付けてインポートする機能があります。ExcelからXMLファイル(チケット)を指定して開きます。ダイアログが表示されるので[XMLソース作業ウィンドウを使用する]を選択して[OK]ボタンをクリックします。

次のメッセージが表示されたら、[OK]ボタンをクリックします。

XML要素のツリーが表示されます。対応付けは、抽出したいXML要素をツリーからドラッグして、シートの任意の列にドロップして行います。各要素名(1行目)は自由に変更できますので、わかりやすい名前に適宜変更してください。なお、カスタムフィールドの抽出は不要です。

ぼくは次のように対応付けました。この状態を一度保存します。

列番号 列名 XML要素
A id issue id
B project_id project id
C tracker_id tracker id
D status_id status id
E priority_id priority id
F author_id author id
G subject subject
H description description
I start_date start_date
J due_date due_date
K done_ratio done_ratio
L estimated_hours estimated_hours
M created_on created_on
N updated_on update_on
O closed_on closed_on
P category_id category id
Q fixed_version_id fixed_version id
R assigned_to_id assigned_to id

XMLファイル(チケット)のインポート

シート上のXML要素が選択された状態で右クリックして[XML]をポイント、[XMLの対応付けのプロパティ]をクリックします。ダイアログが表示されるので、次の通り設定して[OK]ボタンをクリックします。

シート上のXML要素が選択された状態で右クリックして[XML]をポイント、[インポート]をクリックします。先ずはXMLファイルを一つだけ選択して、インポートしてみます。セルの高さは、シート全体を選択して手動で調整すると、その高さがずっと維持されます。

以降は、10ファイルずつ取り込んでいきます。1ファイル100件で抽出しているので、最後の行数を見れば、どこまで取り込んだかわかります。適宜ブックを保存しながらインポートしてください。

一部エラーが表示されますが、インポート自体はできていますので作業を継続します。

テーブルから範囲に変換

すべてのファイルを取り込み終わったら、シート上のXML要素が選択された状態で[テーブルツール – デザイン]をクリックして、表示されたリボンから[範囲に変換]をクリックします。

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

これで複数のXMLファイル(チケット)を、一つのブックにまとめるところまでできました。

このデータをCSVにエクスポートして「issues」テーブルに取り込むには、あと少しだけ変換が必要です。次は、CSVへのエクスポート前に必要なデータ変換を紹介します。

最後までご覧いただきありがとうございます。
スポンサーリンク

フォローする