特別演習の2つ目です。研修で時間が余ったときに取り組むサブ演習で、本編の流れからは独立しています。今回は、これまでのExcelやCSVではなく、Webから直接データを取り込んで、いつ開いても最新の情報が並ぶ「自治体ダッシュボード」を作ります。
題材は、神奈川県の公式サイトが配信しているRSSです。RSSとは、Webサイトの新着情報(記事のタイトル・リンク・更新日時など)を、機械が読みやすい決まった形式で配信する仕組みです。多くの自治体や官公庁が提供していて、Power BIは、このRSSをそのまま読み込むことができます。
流れは次の3ステップです。
1. 神奈川県のサイトでRSSのURLを確認し、Power BIの「Web」から取り込む
2. Power Queryで、入れ子になっている更新日時を取り出して、日付型にする
3. テーブルとカードで、新着一覧のダッシュボードにする
この演習に、ダウンロードするデータはありません。インターネットにつながっていれば、それだけで始められます。
一つ、先にお断りしておきます。RSSの形式は、自治体によってさまざまです。この記事のステップ2は、あくまで神奈川県のRSSに合わせた操作で、Power Queryの操作は自治体ごとに変わります。ほかの自治体で試すときは、手順を丸暗記するのではなく、「どの列に、どんな形で日付が入っているか」を自分のプレビューで確かめながら進めてください。
まず、神奈川県の公式サイトで「RSS配信のご利用案内」のページを開きます。ブラウザで「神奈川県 RSS」と検索すると見つかります。ページの中に「登録フィードは次のURLです」として、フィードのURLが書かれていますので、これをコピーしておきます。
https://www.pref.kanagawa.jp/prs/list.xml
Power BI Desktopを開き、「ホーム」リボンの「データを取得」から「Web」を選びます。
「Web から」の画面が開きます。「基本」のまま、URLの欄に先ほどコピーしたRSSのURLを貼り付けて、OKを押してください。
初めて接続するサイトでは、「Webコンテンツへのアクセス」の画面が出ます。県のサイトは誰でも見られる公開情報ですから、左のメニューは「匿名」のままで、「接続」をクリックします。
ナビゲーターが開き、RSSの中身が階層で表示されます。「http://purl.org/rss/1.0/」の下にある「channel」と「item」にチェックを入れてください。channelはサイト全体の情報、itemが1件1件の新着記事です。
右側のプレビューには、title(記事のタイトル)とlink(記事のURL)が並んでいますね。ここでは「読み込み」ではなく「データの変換」を押して、Power Queryエディターに進みます。
ここからの操作は、神奈川県のRSSの形に合わせたものです。列の名前や入れ子の深さは自治体ごとに違いますので、「この列を展開する」という手順そのものより、「更新日時がどこに隠れているかを探して、日付型にする」という目的のほうを覚えてください。
Power Queryエディターで、左の「item」クエリを選びます。title・link・descriptionの列に続いて、「http://purl.org/dc/elements/1.1/」という長い名前の列があり、中身が「Table」と表示されています。
RSSでは、更新日時のような付加情報が、この中に入れ子で格納されているのです。列名の右端にある、左右矢印の「展開」ボタンをクリックしてください。
展開する列の一覧が出ます。「(すべての列の選択)」を外して、「date」だけにチェックを入れ、OKを押します。
「2026-09-04T17:00:00+09:00」のような形で、更新日時の列が出てきました。ここで一度、「閉じて適用」を押して、レポートに読み込んでみましょう。
読み込んでみると、この列は文字列のままだと分かります。「2026-09-04T17:00:00+09:00」という表記は、ISO 8601と呼ばれる国際的な日時の書き方です。機械には正確ですが、人が読むには少し不親切ですし、このままでは日付として並べ替えや集計ができません。そこで、「データの変換」からPower Queryに戻って、列を整えます。
列名がわかりづらいので、列見出しをダブルクリックして「更新日時」に変更しておきましょう。
続いて「変換」リボンの「日付」から「解析」を選んでください。解析は、文字列で書かれた日付を読み取って、日付型に変換してくれる機能です。時刻やタイムゾーンの部分は落ちて、日付だけが残ります。もう一度「閉じて適用」を押します。
テーブルビューで確認すると、「更新日時」列のデータ型が「日付」になり、「2026年9月4日」のように表示されています。これで下ごしらえは完了です。
レポートビューに戻り、テーブルのビジュアルを追加して、「item」の「更新日時」と「title」を列に入れます。すると、更新日時が「年・四半期・月・日」の4列に分かれて表示されてしまいます。Power BIが日付の列に自動で付ける「日付の階層」が効いているためです。
「列」の「更新日時」の右にある「∨」をクリック(または「更新日時」を右クリック)し、「日付の階層」ではなく「更新日時」を選びます。これで、日付が1列にまとまります。
「更新日時」の見出しをクリックして降順に並べ替えると、新しい記事が上に来ます。
「title」は英語のままですので、「列」の「title」の「∨」から名前の変更を選び、「件名」に変えておきましょう。
仕上げに、ダッシュボードらしく2枚のカードを載せます。「テーブル ツール」の「新しいメジャー」で、次の2つのメジャーを作ってください。
「件数」をカードに載せると、最初は「1.0」のように小数で表示されることがあります。下のキャプチャは表内を1行クリックしているため、フィルターがかかっている状態です。もう1度選択された行をクリックすれば、フィルターは解除されます。
2つのカードのDAX式は次の通りです。
「最新情報」も同じくカードに載せます。テキストボックスで「神奈川県RSSダッシュボード」とタイトルを付ければ完成です。件数は200、最新情報は2026年9月4日。RSSが配信している直近200件の記事と、その最新の更新日です。
件数 = COUNTA ( 'item'[title] )
最新情報 = MAX ( 'item'[更新日時] )
なお、Excelのピボットテーブルと同様、データの更新は手動となります。「ホーム」の「更新」ボタンを押して、最新の状態となります。自動更新も可能ですが、Power Automateが必要なんですよね。なので、基本のデータ更新は手動と覚えておいてください。
多くの自治体が、同じようにRSSを配信しています。「○○市 RSS」で検索してフィードのURLを見つけたら、ステップ1は同じです。URLを差し替えて、Webから取り込むだけです。
違ってくるのは、ステップ2のPower Queryです。RSSには「RSS 1.0」「RSS 2.0」「Atom」といった複数の形式があり、自治体がどれを使っているかで、ナビゲーターに出てくる階層も、列の名前も変わります。
神奈川県は RSS 1.0 で、更新日時が「http://purl.org/dc/elements/1.1/」の中の date に入っていましたが、RSS 2.0 なら pubDate という列に最初から見えていたり、Atom なら updated という名前だったりします。
日付の書き方も、「2026-09-04T17:00:00+09:00」のほかに「Thu, 04 Sep 2026 17:00:00 +0900」のような英語の曜日つきの形があります。「解析」で読み取れない場合は、「列の分割」で日付の部分だけを切り出してから日付型に変換する、といった工夫が必要になります。
ですから、ほかの自治体で試すときは、ナビゲーターのプレビューとPower Queryの画面をよく見て、「更新日時はどこか」「どんな書き方か」を確かめてから進めてください。そこさえ押さえれば、ステップ3以降は同じです。
複数の自治体のRSSを別々のクエリで読み込み、「クエリの追加」で1つにまとめれば、近隣の市町村の新着情報を横断して眺めるダッシュボードも作れます。ぜひいろいろな自治体の情報を収集してみてください。Power Queryの練習にもなるはずですよ。