以前に XML マップを作成した場合は、XML マップを使用して、マップされたセルに XML データをインポートできますが、XML マップを使用せずに XML データをインポートするためのいくつかのメソッドとコマンドもあります。
XML の対応付けがある場合は、この手段で、対応付けられたセルに XML データをインポートします。
-
XML の対応付けで、いずれかの対応付けられたセルを選びます。
-
[開発]、[インポート] の順にクリックします。
[開発] タブが表示されていない場合は、「[開発] タブを表示する」を参照してください。
-
[XML のインポート] ダイアログ ボックスで、インポートする XML データ ファイル (.xml) を参照して選び、[インポート] をクリックします。
XML データをインポートするその他の方法
問題に関する詳細については、この記事の末尾にある XML データのインポートに関する一般的な問題を参照してください。
XML データ ファイルを XML テーブルとしてインポートする
-
[開発]、[インポート] の順にクリックします。
[開発] タブが表示されていない場合は、「[開発] タブを表示する」を参照してください。
-
[XML のインポート] ダイアログ ボックスで、インポートする XML データ ファイル (.xml) を参照して選び、[インポート] をクリックします。
XML データ ファイルでスキーマが参照されていない場合、XML データ ファイルからスキーマが推定されます。
-
[データのインポート] ダイアログ ボックスで、次のいずれかの操作を行います。
-
既存のワークシートの [XML テーブル] を選択して、指定したセルの場所にあるワークシートの XML テーブルに XML データ ファイルの内容をインポートします。
-
[新しいワークシートの XML テーブル] を選択して、セル A1 から始まる新しいワークシートの XML テーブルにファイルの内容をインポートします。 XML データ ファイルのスキーマが [XML ソース] 作業ウィンドウに表示されます。
-
-
XML データ ファイルでスキーマが参照されていない場合、XML データ ファイルからスキーマが推定されます。
-
XML データの動作 (データ バインディング、形式、レイアウトなど) を制御するには、[ プロパティ] をクリックします。これにより、[ XML マップ のプロパティ ] ダイアログ ボックスが表示されます。 たとえば、マップされた範囲内の既存のデータは、既定でデータをインポートするときに上書きされますが、これを変更できます。
複数の XML データ ファイルをインポートする
-
対応付けられたセルの単一のセットに複数の XML ファイルをインポートするには、対応付けられたセルの 1 つを選びます。
対応付けられたセルの複数のセットに複数の XML ファイルをインポートするには、ワークシート上の対応付けられていないセルをクリックします。
-
[開発]、[インポート] の順にクリックします。
[開発] タブが表示されていない場合は、「[開発] タブを表示する」を参照してください。
-
[XML のインポート] ダイアログ ボックスで、インポートする XML データ ファイル (.xml) を参照して選びます。
-
ファイルが連続している場合は、Shift キーを押しながら、リスト内の最初のファイルと最後のファイルをクリックします。 XML ファイルからすべてのデータがインポートされ、対応付けられたセルに追加されます。
-
ファイルが連続していない場合は、Ctrl キーを押しながら、リスト内のインポートする各ファイルをクリックします。
-
-
[インポート] をクリックします。
連続していないファイルを選択した場合は、[ ファイル名のインポート <>.xml ダイアログ ボックスが表示されます。 ファイルごとに、インポートする XML データ ファイルに対応する XML の対応付けを選びます。
まだインポートされていない選択ファイルのすべてに対して単一の対応付けを使用するには、[このスキーマのファイルのうち、選択されているすべてのファイルにこの XML の対応付けを使用する] を選びます。
複数の XML データ ファイルを外部データとしてインポートする
同じ名前空間を使用しているが、XML スキーマが異なる複数の XML ファイルをインポートするには、[XML データ インポート] コマンドを使用できます。 インポートする XML データ ファイルごとに、一意の XML の対応付けが作成されます。
注: 名前空間の定義がない複数の XML ファイルをインポートすると、XML ファイルは同じ名前空間を使用しているように扱われます。
-
Microsoft 365 サブスクリプションで Excel を使用している場合は、[データ] > [ファイルからデータ > を取得する] > [XML から] をクリックします。
Excel 2016 以前を使用している場合は、[データ]、[その他のソースから]、[XML データ インポート] の順にクリックします。
-
インポートする XML データ ファイル (.xml) が存在するドライブ、フォルダー、またはインターネット上の場所を参照します。
-
ファイルを選択し、[開く] をクリックします。
-
[データのインポート] ダイアログ ボックスで、次のいずれかの操作を行います。
-
既存のワークシート内の XML テーブル ファイルの内容は、新しいワークシートの新しい XML テーブルにインポートされます。 XML データ ファイルでスキーマが参照されていない場合、XML データ ファイルからスキーマが推定されます。
-
[<c0>既存のワークシート</c0>] を選ぶと、XML データは、行と列から成る 2 次元のテーブルでインポートされます。 XML タグは列見出しとして表示され、データは該当する列見出しの下の行に表示されます。 最初の要素 (ルート ノード) はタイトルのように使用され、指定したセルの位置に表示されます。 残りのタグは 2 番目の行でアルファベット順に並べ替えられます。 この場合、スキーマは推定されず、XML の対応付けは使用できません。
-
新しいワークシート Excel はブックに新しいワークシートを追加し、XML データを新しいワークシートの左上隅に自動的に配置します。 XML データ ファイルでスキーマが参照されていない場合、XML データ ファイルからスキーマが推定されます。
-
-
データ バインディング、形式、レイアウトなど、XML データの動作を制御するには、[ プロパティ] をクリックすると、[ XML マップのプロパティ ] ダイアログ ボックスが表示されます。 たとえば、マップされた範囲内の既存のデータは、既定でデータをインポートするときに上書きされますが、これを変更できます。
XML データ ファイルを開いてそのデータをインポートする
-
[ファイル]、[開く] をクリックします。
-
[開く] ダイアログ ボックスで、開こうとしているファイルが存在するドライブ、フォルダー、またはインターネット上の場所をクリックします。
-
ファイルを選択し、[開く] をクリックします。
-
[ XML のインポート ] ダイアログ ボックスが表示された場合、開いたファイルは 1 つまたは複数の拡張スタイルシート言語変換 (XSLT) スタイル シートを参照するため、次のいずれかのオプションをクリックできます。
-
<c0> スタイルシートを適用しないでファイルを開く</c0>[] - XML データは、行と列から成る 2 次元のテーブルでインポートされます。 XML タグは列見出しとして表示され、データは該当する列見出しの下の行に表示されます。 最初の要素 (ルート ノード) はタイトルのように使用され、指定したセルの位置に表示されます。 残りのタグは 2 番目の行でアルファベット順に並べ替えられます。 この場合、スキーマは推定されず、XML の対応付けは使用できません。
-
次のスタイル シートを適用してファイルを開きます (1 つを選択します) 適用するスタイル シートを選択し、[OK] をクリック します。 XML データは、選択したスタイル シートに従って書式設定されます。
注: Excel では、ユーザーが誤って元のソース ファイルを Excel マクロ有効ブック ファイル形式 (.xlsm) で保存しないように、XML データが読み取り専用で開きます。 この場合、スキーマは推定されず、XML の対応付けは使用できません。
-
-
[ XML を開く ] ダイアログ ボックスが表示された場合、XML ファイルには XSLT スタイル シート参照がありません。 ファイルを開くには、次のいずれかのオプションをクリックします。
-
[XML テーブルとして開く] をクリックすると、新規のブックに XML テーブルが作成されます。
ファイルの内容が XML テーブルにインポートされます。 XML データ ファイルでスキーマが参照されていない場合、XML データ ファイルからスキーマが推定されます。
-
[ 読み取り専用ブックとして] をクリックします。
XML タグは列見出しとして表示され、データは該当する列見出しの下の行に表示されます。 最初の要素 (ルート ノード) はタイトルのように使用され、指定したセルの位置に表示されます。 残りのタグは 2 番目の行でアルファベット順に並べ替えられます。 この場合、スキーマは推定されず、XML の対応付けは使用できません。
Excel では、ユーザーが誤って元のソース ファイルを Excel マクロ有効ブック ファイル形式 (.xlsm) で保存しないように、XML データが読み取り専用で開きます。 この場合、スキーマは推定されず、XML の対応付けは使用できません。
-
[[XML ソース] 作業ウィンドウを使用する] をクリックした場合
XML データ ファイルのスキーマが [XML ソース] 作業ウィンドウに表示されます。 スキーマの要素をワークシートにドラッグして、要素をワークシートに対応付けることができます。
XML データ ファイルでスキーマが参照されていない場合、XML データ ファイルからスキーマが推定されます。
-
XML データのインポートに関する一般的な問題
XML マップに従ってデータを検証できない場合、Excel では [XML インポート エラー ] ダイアログ ボックスが表示されます。 各エラーの詳細情報を参照するには、このダイアログ ボックスの [詳細] をクリックします。 次の表は、一般的なインポートのエラーの一覧です。
エラー |
メモ |
スキーマの検証に失敗しました |
[XML の対応付けのプロパティ] ダイアログ ボックスの [インポートまたはエクスポート時にスキーマに対してデータを検証する] をクリックしたときに、データはインポートされましたが、指定した XML の対応付けでデータが検証されませんでした。 |
一部のデータはテキストとしてインポートされました |
インポートしたデータの一部または全部が、宣言されているデータ型からテキストに変換されました。 このデータを計算で使用するには、データをテキストから数値または日付に変換する必要があります。 たとえば、テキストに変換された日付値は、DATE データ型に変換するまで YEAR 関数で意図したとおりに機能しません。 Excel でデータがテキストに変換されるのは、次の場合です。
|
XML 解析エラー |
指定の XML ファイルを XML パーサーで読み込めません。 XML ファイルに構文エラーがなく、XML の形式が正しいことを確認してください。 |
このデータに対応する XML の対応付けが見つかりません |
この問題が発生するのは、インポートする XML データ ファイルを 2 つ以上選び、そのうちのいずれかについて、該当する XML の対応付けが見つからなかったときです。 ダイアログ ボックスのタイトル バーに名前が表示されているファイルについて、まず適切なスキーマをインポートし、それから再びファイルをインポートしてください。 |
データを取り込むために XML テーブルのサイズを変更することができません |
XML テーブルにデータをインポートまたは追加することによって行を追加しようとしていますが、テーブルを拡大するための領域がありません。 XML テーブルは最下部から下にしか拡大できません。 たとえば、XML テーブルのすぐ下に何かのオブジェクト (図や別のテーブルなど) があって、XML テーブルの拡大を妨げている可能性があります。 または、XML テーブルを拡大しようとすると、Excel の行制限 (1,048,576) を超えてしまいます。 この問題を解決するには、ワークシート上のテーブルとオブジェクトを再配置して、XML テーブルを最下部から下に拡大できるようにします。 |
指定した XML ファイルはスキーマを参照していません
開こうとしている XML ファイルは、XML スキーマを参照していません。 ファイル内の XML データを操作するには、Excel に、XML ファイルの内容に基づいたスキーマが必要です。 スキーマが正しくないか十分でない場合は、ブックから削除します。 続いて、XML スキーマ ファイルを作成し、XML データ ファイルがそのスキーマを参照するように XML データ ファイルを編集します。 詳細については、「XML 要素を XML マップのセルに対応付ける」を参照してください。
注: 独立した XML スキーマ データ ファイル (.xsd) であると Excel で推定されたスキーマをエクスポートすることはできません。 XML スキーマ ファイルは、XML スキーマ エディターなどの方法を使って作成できますが、それらを手軽に使用できなかったり、使用方法がわからなかったりする可能性があります。
以下の手順に従って、Excel で作成したスキーマを、ブックから削除します。
-
[開発]、[ソース] の順にクリックします。
[開発] タブが表示されていない場合は、「[開発] タブを表示する」を参照してください。
-
[XML ソース] 作業ウィンドウで、[XML の対応付け] をクリックします。
-
[XML の対応付け] ダイアログ ボックスで、Excel で作成された XML の対応付けをクリックし、[削除] をクリックします。
同じ名前空間を使用しているがスキーマが異なる複数の XML ファイルをインポートすると、想定どおりには動作しない
一般に、複数の XML データ ファイルと XML スキーマを扱うときは、スキーマごとに XML の対応付けを作成し、目的の要素を対応付け、各 XML データ ファイルを適切な XML の対応付けにインポートします。 [インポート] コマンドを使用して、名前空間が同じである複数の XML ファイルを開く場合は、XML スキーマを 1 つしか使用できません。 このコマンドを使用して、同じ名前空間を使用しているがスキーマが異なる複数の XML ファイルを開くと、予期しない結果になることがあります。 たとえば、データが上書きされたり、ファイルを開くことができない場合があります。
同じ名前空間を使用しているが XML スキーマが異なる複数の XML ファイルをインポートするには、[XML データ インポート] コマンド ([データ]、[その他のソース] の順にクリック) を使用します。 このコマンドにより、名前空間が同じである複数の XML ファイルで複数の XML スキーマを使用できます。 インポートする XML データ ファイルごとに、一意の XML の対応付けが作成されます。
注: 名前空間の定義がない複数の XML ファイルをインポートすると、XML ファイルは同じ名前空間を使用しているように扱われます。
[開発] タブを表示する
[開発] タブが表示されない場合は、次の操作を行って表示します。
-
[ファイル]、[オプション] の順にクリックします。
-
[リボンのユーザー設定] をクリックします。
-
[メイン タブ] で [開発] ボックスをオンにし、[OK] をクリックします。