配列が入れ子になっている JSONファイルを読み込んで表形式で表示する - Excel

配列が入れ子になっているJSONファイルを読み込んで表形式で表示する手順を紹介します。

JSONファイル

以下のJSONファイルを用意します。配列内のオブジェクトのstockの値が配列になっており、配列が入れ子になった状態のJSONファイルです。
data-a.json
[
  {
    "name": "ぺんぎんクッキー",
    "price": 250,
    "stock": [
      {
        "tokyo": 24,
        "fukuoka": 12,
        "sapporo": 9
      }
    ]
  },
  {
    "name": "しろくまアイス",
    "price": 320,
    "stock": [
      {
        "tokyo": 3,
        "fukuoka": 4,
        "sapporo": 6
      }
    ]
  },
  {
    "name": "かるがもサブレ",
    "price": 180,
    "stock": [
      {
        "tokyo": 12,
        "fukuoka": 8,
        "sapporo": 10
      }
    ]
  }
]

手順

Excelを起動し、ツールリボンの[データ]のタブをクリックして選択し、[データの取得]ボタンをクリックし、[ファイルから]の[JSON から]の 項目をクリックします。


ファイルを開くダイアログが表示されますので、先に準備したJSONファイルを選択して開きます。 JSONファイルを読み込むと、Power Query エディターのウィンドウが表示されます。(下図参照)


ツールリボンの[テーブルに変換]ボタンをクリックします。


テーブルへの変換ダイアログが表示されます。設定はデフォルトのまま[OK]ボタンをクリックします。


テーブルに変換できました。


[Column1]の右側のボタンをクリックします。


ドロップダウンウィンドウが表示されますので、表示したい列にチェックをつけます。今回はすべての列にチェックをつけます。 設定後、ドロップダウンウィンドウの[OK]ボタンをクリックします。


列が表示され、下図の画面が表示されます。


値がリスト(配列)で記述されている、[Column1.stock]の右側のボタンをクリックします。


ドロップダウンメニューが表示されます。メニューの[新しい行に展開する]の項目をクリックします。


もう一度、[Column1.stock]の右側のボタンをクリックします。 下図のドロップダウンウィンドウが表示されますので、表示したい列の項目にチェックをつけます。 チェック後、ドロップダウンウィンドウの[OK]ボタンをクリックします。


リストで記述されていた値が列として展開されます。



ツールリボンの[閉じて読み込む]ボタンをクリックします。


Power Query エディターのウィンドウが閉じられ、Excelシートに値が読み込まれます。


JSONの値が表形式で、Excelシートで表示できました、値が配列で記述されていた値も、列の値として読み込めました。


著者
iPentecの企画・分析担当。口が悪いのでなるべく寡黙でありたいと思っている。が、ついついしゃべってしまい、毎回墓穴を掘っている。
掲載日: 2024-08-21
iPentec all rights reserverd.