※本ページにはプロモーション(広告)が含まれています
ExcelでXMLファイルをインポートしようとすると「XMLマップを開けません」「このファイルを開けません」などのエラーが表示されて困っていませんか?XMLのインポートは手順を1つ間違えるだけで失敗します。この記事では原因と対処法を順番に解説します。
ExcelのXMLインポート機能は、業務システムから出力したデータやWeb APIのレスポンスをExcelで扱うときに非常に便利な機能です。しかし、XMLファイルの構造やExcelの設定によっては思いどおりに動かないことがあります。
この記事では、XMLインポートが機能しない・エラーになる主な原因を5つに絞り込み、それぞれの具体的な対処法を丁寧に解説します。2026年最新のExcel(Microsoft 365)に対応した内容です。

📋 この記事でわかること
- ExcelのXMLインポートで発生する代表的なエラーの原因
- XMLスキーマ(XSD)の確認・修正方法
- ファイルのエンコーディング問題の対処法
- Power Queryを使った代替インポート手順
- マクロセキュリティ設定とOfficeアップデートによる解決策
- 主要なXMLエラーコードの意味と対応方法
ExcelのXMLインポート機能とは
ExcelのXMLインポートとは、XML形式(拡張子 .xml)のファイルをExcelのセルに取り込んでデータとして扱う機能です。主に以下の3つの方法があります。
① 「データ」タブからのXMLインポート
「データ」→「データの取得」→「ファイルから」→「XMLから」を選択する方法です。Power Queryエディターが起動し、データを整形してからExcelに読み込めます。
② 開発者タブからのXMLマップ読み込み
「開発者」タブ→「XML」グループ→「インポート」を使う方法です。XMLスキーマ(XSD)またはXMLファイルそのものからスキーマを自動生成し、セルのマッピングを行います。
③ ファイルを直接Excelで開く
XMLファイルをダブルクリックするか、「ファイル」→「開く」からXMLファイルを直接開く方法です。もっとも手軽ですが、複雑な構造のXMLには対応できないことがあります。
Excel 2016以降(Microsoft 365含む)では、XMLインポートの内部処理が大幅に変更されました。旧バージョンで正常に動作していたXMLファイルが、新バージョンではエラーになるケースが増えています。

エラーになる主な原因
XMLインポートが失敗する原因は大きく5つに分類されます。
| 原因 | 代表的なエラーメッセージ | 発生頻度 |
|---|---|---|
| XMLスキーマの不整合 | 「XMLマップを開けません」「スキーマが無効です」 | ★★★★★ |
| エンコーディングの問題 | 「このXMLデータを解析できません」「文字が無効です」 | ★★★★☆ |
| Power Queryの設定ミス | 「テーブルが取得できません」「列が見つかりません」 | ★★★☆☆ |
| マクロ・セキュリティ制限 | 「操作はセキュリティのためブロックされました」 | ★★★☆☆ |
| Officeのバグ・バージョン不整合 | 「予期しないエラーが発生しました」 | ★★☆☆☆ |
対処法1:XMLスキーマ(XSD)を確認・修正する
もっとも多い原因がXMLスキーマの問題です。ExcelはXMLをインポートする際に、データ構造を定義するスキーマを参照します。スキーマが壊れていたり、XMLの実際の構造と一致しなかったりするとエラーが発生します。
よくあるスキーマエラーのパターン
- ルート要素が複数ある:XMLは必ずルート要素が1つでなければなりません
- 名前空間の不一致:XSDで宣言した名前空間とXMLファイルの名前空間が異なる
- 必須要素が欠落している:XSDで
minOccurs="1"と定義された要素がXML内に存在しない - データ型の不一致:XSDで整数型(
xs:integer)と定義されているのに文字列が入っている
確認・修正手順
手順1:XMLファイルをテキストエディタで開く
メモ帳またはVS CodeなどのテキストエディタでXMLファイルを開き、1行目の宣言を確認します。
この宣言がない場合や、encoding属性が間違っている場合はエラーの原因になります。
手順2:ルート要素を確認する
XMLファイルには必ずルート要素が1つだけ必要です。以下の例のように、すべてのデータが1つのタグで囲まれているか確認します。
<data> <!– ルート要素:1つだけ –>
<record>
<name>山田太郎</name>
<age>30</age>
</record>
</data>
手順3:オンラインXMLバリデーターで検証する
無料のオンラインツール(例:「XML Validator」で検索)にXMLの内容を貼り付けてバリデーションを実行します。エラー箇所と原因が英語で表示されるので、その箇所を修正します。
手順4:Excelでスキーマを削除して再追加する
- 「開発者」タブ →「ソース」をクリック
- 「XMLのマップ」ダイアログで既存のマップを選択
- 「削除」ボタンをクリックしてマップを削除
- 「XMLのマップの追加」から新しくXMLファイルを追加し直す
「ファイル」→「オプション」→「リボンのユーザー設定」→「開発者」にチェックを入れると表示されます。
対処法2:ファイルエンコーディングを確認・変換する
XMLファイルのエンコーディング(文字コード)がExcelの期待する形式と異なる場合、「このXMLデータを解析できません」「無効な文字が含まれています」などのエラーが発生します。特に日本語を含むXMLファイルで多く見られます。
エンコーディング問題の確認方法
手順1:テキストエディタでエンコーディングを確認する
- メモ帳でXMLファイルを開く
- 「名前を付けて保存」を選択
- 「エンコード」のドロップダウンで現在の文字コードを確認する
ExcelのXMLインポートで推奨されるエンコーディングは UTF-8 です。「Shift-JIS」「EUC-JP」などの場合は変換が必要です。
手順2:VS Codeを使ってUTF-8に変換する(推奨)
- VS CodeでXMLファイルを開く
- 右下のステータスバーに現在のエンコーディングが表示される(例:「Shift JIS」)
- そのエンコーディング名をクリック
- 「エンコードで保存」→「UTF-8」を選択
- 保存されたファイルをExcelで再度インポートする
手順3:XMLの宣言と実際のエンコーディングを一致させる
ファイルの1行目にある encoding="..." の値と、実際のファイルの文字コードが一致していることを確認します。
UTF-8ファイルには「BOM付きUTF-8」と「BOM無しUTF-8」の2種類があります。Excelは通常どちらも処理できますが、システムによってはBOM付きが原因でエラーになるケースがあります。問題が続く場合は「BOM無しUTF-8」で保存し直してみてください。

対処法3:Power Queryで代替インポートする
XMLスキーマやエンコーディングの問題で従来の方法がうまくいかない場合は、Power Queryを使った方法が有効です。Power QueryはExcel 2016以降(Microsoft 365)に標準搭載されており、複雑なXMLでも柔軟に取り込むことができます。
Power QueryでXMLをインポートする手順
- Excelを開き、「データ」タブをクリックする
- 「データの取得」→「ファイルから」→「XMLから」を選択する
- ファイル選択ダイアログでXMLファイルを選択し「インポート」をクリック
- 「ナビゲーター」ウィンドウが開き、XMLの構造がツリー形式で表示される
- 取り込みたいテーブル(ノード)を選択する
- 「読み込み」または「データの変換」をクリックする
「データの変換」で整形する
「データの変換」を選ぶとPower Queryエディターが起動し、以下の操作が可能です。
| 操作 | 用途 |
|---|---|
| 列の展開 | ネストされたXML要素を列として展開する |
| データ型の変換 | テキストを数値・日付などに変換する |
| フィルター | 不要な行を除外して必要なデータだけ取得する |
| 列の名前変更 | XMLの要素名をわかりやすい列名に変更する |
Power Queryで取り込んだデータは「データ」→「すべて更新」をクリックするだけで最新のXMLファイルからデータを再取得できます。定期的に更新されるXMLデータを扱う場合に特に便利です。
対処法4:マクロセキュリティ設定を確認する
Excelのセキュリティ設定が厳しすぎると、XMLインポートに必要なマクロ処理やデータ接続がブロックされる場合があります。
セキュリティ設定の確認手順
- 「ファイル」→「オプション」→「セキュリティセンター」をクリック
- 「セキュリティセンターの設定」ボタンをクリック
- 左側メニューの「マクロの設定」を選択
- 「警告を表示してすべてのマクロを無効にする」を選択(推奨設定)
- 「OK」をクリックして保存
次に、「信頼できる場所」にXMLファイルが保存されているフォルダを追加します。
- 「セキュリティセンターの設定」→「信頼できる場所」をクリック
- 「新しい場所の追加」をクリック
- XMLファイルが保存されているフォルダを指定
- 「この場所のサブフォルダも信頼する」にチェックを入れる
- 「OK」で保存
外部データ接続の設定確認
「セキュリティセンターの設定」→「外部コンテンツ」の項目も確認します。
| 設定項目 | 推奨設定 |
|---|---|
| データ接続のセキュリティ設定 | すべてのデータ接続について確認メッセージを表示する |
| ブックリンクのセキュリティ設定 | ブックのリンクの自動更新の前にユーザーに確認する |
会社のPC(グループポリシー管理下)では、個人でセキュリティ設定を変更できない場合があります。この場合はIT管理者に連絡してXMLインポートの許可を申請してください。
対処法5:Officeをアップデートする
ExcelのXMLインポート処理はバージョンによってバグが報告されています。最新バージョンにアップデートすることで解決するケースがあります。
Microsoft 365のアップデート手順
- Excelを起動し「ファイル」→「アカウント」をクリック
- 「Officeの更新プログラム」セクションの「今すぐ更新」をクリック
- アップデートが完了したらExcelを再起動
- 再度XMLインポートを試みる
Officeのバージョン確認方法
- 「ファイル」→「アカウント」をクリック
- 「Excelのバージョン情報」をクリック
- バージョン番号を確認する(例:バージョン2503 ビルド18623.20268)
アップデートしても改善しない場合は、Officeの修復インストールを試してください。「コントロールパネル」→「プログラムと機能」→「Microsoft 365 Apps」を右クリック→「変更」→「オンライン修復」を選択します。所要時間は30分程度です。
XMLエラーコード一覧表
ExcelのXMLインポート時に表示される主なエラーメッセージとその対処法をまとめました。
| エラーメッセージ | 原因 | 対処法 |
|---|---|---|
| XMLマップを開けません | スキーマが無効、ファイルが壊れている | 対処法1(スキーマ確認)を実施 |
| このXMLデータを解析できません | エンコーディングの不一致、構造エラー | 対処法2(エンコーディング変換)を実施 |
| XMLソースが必要です | XMLマップが設定されていない | 開発者タブからXMLマップを再追加 |
| ファイルを開くことができません | ファイルが破損、権限不足 | ファイルをコピーして再試行、権限確認 |
| 名前空間エラー | XSDとXMLの名前空間が不一致 | XMLのxmlns属性を修正 |
| 操作はブロックされました | セキュリティポリシーの制限 | 対処法4(セキュリティ設定確認)を実施 |
| 予期しないエラー(コード0x800A03EC) | Excelのバグ、バージョン不整合 | 対処法5(Officeアップデート)を実施 |
| データが多すぎるため取り込めません | 行数がExcelの上限(1,048,576行)を超えている | Power QueryでフィルターしてからExcelに読み込む |
| 繰り返し要素を含むXMLマップのエラー | 同一階層に複数の繰り返し要素がある | Power Queryで取り込み直す |
よくあるトラブルと追加対処法
XMLファイルは開けるが一部データが欠落する
これはXMLの要素が複数階層にネストされているときに起きやすい問題です。Power Queryエディターで「列の展開」ボタン(列ヘッダー右の展開アイコン)を使って、ネストされた要素を個別の列として展開してください。
インポートしたデータが全て1列に入る
XMLの構造がフラット(階層のない単純なテキスト)の場合、Excelが適切な列に分割できないことがあります。Power Queryの「列の分割」機能で区切り文字(カンマ、タブなど)を指定して分割してください。
数値が文字列として取り込まれる
Power Queryエディターで該当列のヘッダー左にある型アイコンをクリックし、「整数」や「10進数」に変更します。また、列を選択して「変換」タブ→「データ型」から変更する方法もあります。
日付データが正しく認識されない
XMLの日付フォーマット(例:2026-04-07)とExcelのロケール設定が合わない場合に起きます。Power Queryで「ロケールを使用してデータ型を変更」→日本語(日本)を選択して変換してください。
XMLインポートの代替方法まとめ
| 方法 | 難易度 | 対応できるXML | 特徴 |
|---|---|---|---|
| 開発者タブ→インポート | 中 | シンプルな構造のみ | スキーマとのマッピングが必要 |
| Power Query(データタブ) | 低〜中 | 複雑なネスト構造も可 | GUIで整形可能、更新も簡単 |
| 直接開く(ダブルクリック) | 低 | 単純な構造のみ | 最も手軽だが機能は限定的 |
| VBAマクロで読み込み | 高 | ほぼすべてのXML | MSXML2.DOMDocumentで完全制御可能 |
この記事に関連するおすすめ商品
Excel VBA&マクロ完全ガイド(書籍)
約2,200円〜
XMLインポート自動化・VBAマクロ習得に最適
Microsoft 365 Personal(サブスクリプション)
約12,000円/年
常に最新版Excel・Power Query利用可能
Power Query&Power Pivot データ分析入門(書籍)
約2,800円〜
XMLデータの取込・整形・分析をわかりやすく解説
※ 価格は変動します。最新価格はリンク先でご確認ください
よくある質問(FAQ)
まとめ
ExcelのXMLインポートが機能しない・エラーになる原因と対処法を解説しました。
対処法まとめ
- XMLスキーマを確認・修正する:ルート要素の数、名前空間、必須要素の確認
- ファイルエンコーディングをUTF-8に変換する:VS Codeを使って文字コードを変換
- Power Queryで代替インポートする:複雑な構造にも対応、データ更新も簡単
- マクロセキュリティ設定を確認する:信頼できる場所の追加、外部データ接続の許可
- Officeをアップデートする:バグ修正版への更新、修復インストールの実施
まずは対処法1と2(スキーマとエンコーディングの確認)を試し、それでも解決しない場合はPower Queryへの切り替えをおすすめします。Power Queryは複雑なXMLファイルでも柔軟に対応でき、データの自動更新機能も備えているため、業務での利用に最適です。
この記事の手順を参考に、XMLインポートの問題を解決して作業効率を上げてください。引き続きExcelの活用法についてはminto.techでご紹介していきます。
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!