PR

Power BIでGoogle スプレッドシートのデータを読み込む

Power BI
スポンサーリンク

Excelで共同編集しようとすると、クラウド(OneDrive)にあげて共有すればいいと思いますが、そもそも個人でOneDriveを使っていない方もいますね。

そこで、Google スプレッドシートだとクラウドサービスのため、最初からクラウドにファイルがあります。Googleアカウントを持ってる方にファイル共有できるので、共同編集がやりやすいです。

Google スプレッドシートをBIツールで分析しようと思ったときに、同じGoogle製品のLooker Studioが候補に挙がります。


ただ、普段はPower BIで分析している方であれば、Power BIで分析したいニーズもあると思います。Power BIには標準で「Googleスプレッドシート」に直接接続できるコネクタが用意されています。これを使えば、クラウド上のデータをダイレクトに参照し、ボタン一つで最新の状態へ更新することが可能です。

BIツールではありませんが、残念ながらExcelのPower QueryではGoogle スプレッドシートが読み込めません。

今回は、Power BI Desktopを使ってGoogleスプレッドシートのデータを読み込む具体的な手順について解説します。

本記事のPower BIは次のバージョンを使用しています。
2.149.1252.0 64-bit (2025年11月)

スポンサーリンク

サンプルデータ

売上明細をサンプルデータとして使用します。

サンプルデータはこちらからダウンロードしてください。Excelファイルになっているため、表をGoogle スプレッドシートに貼り付けてお使いください。

スポンサーリンク

実際の手順

それでは、Power BI Desktopを使って接続していきましょう。

手順1:GoogleスプレッドシートのURLを取得

まず、ブラウザで対象のGoogleスプレッドシートをURLを取得します。

ファイルをクリックし、🔗ボタンをクリックします。

URLがクリップボードにコピーされました。

手順2:Power BI Desktopでコネクタを選択

Power BI Desktopを起動します。初期画面の「他のソースからデータを取得する」をクリックします。

「その他」ー「Google スプレッドシート」をクリックし、「接続」をクリックします。

警告のポップアップが表示されます。「続行」をクリックします。

Google側で仕様変更とかあったら更新プログラムはリリースするけど、結果は保証できないよ?って感じのことが書いてあります。

URLの入力画面が表示されるので、手順1でコピーしたURLを貼り付け、「OK」をクリックします。

手順3:Googleアカウントで認証する

Google スプレッドシートにアクセスするためには、Googleアカウントにサインインする必要があります。「サインイン」をクリックします。

ブラウザーが開きます。Googleアカウントを選択します。

Power BI DesktopからGoogleアカウントへのアクセス許可を求められます。「続行」をクリックします。

「サインインが完了しました。アプリケーションに戻ることができます。このブラウザーのタブを閉じてください。」と表示されますので、タブを閉じてください。

サインインが完了したので、「接続」をクリックします。

手順4:データの加工(Power Query)

ここからは、データの取得およびデータの加工をPower Queryで実施します。

特にデータ加工の必要がなければ、「読み込み」ボタンをクリックしても良いのですが、プレビュー画面ではヘッダー行を元に列名が自動的に設定されていません。
読み込みボタンではなく、「データの変換」ボタンをクリックしましょう。

「ホーム」タブー「1行目をヘッダーとして使用」をクリックします。

列名が設定されました。

手順5:データの出力

ここまで完了したら、「ホーム」タブー「閉じて適用」をクリックして取り込み完了です。

「テーブルビュー」ボタンをクリックすると、取得したデータの一覧が参照できます。

スポンサーリンク

補足と注意点:パフォーマンスについて

Excelファイルやデータベース接続に比べて、Google スプレッドシートコネクタはパフォーマンス面で制限があります。

読み込み速度とタイムアウトの壁

Microsoftの公式サイトにはGoogle スプレッドシートのコネクターについて解説があり、どうやら裏でGoogle Sheets API を呼び出しているようです。

次に、コネクタは URL から Google スプレッドシート ID を解析して、Google Sheets API 呼び出しに含めます。

引用元:Google スプレッドシート

このAPIには通信上の制約があり、Googleの公式サイトには次のように記載があります。

Sheets API には分単位の割り当てがあり、1 分ごとに補充されます。たとえば、プロジェクトごとに 1 分あたり 300 件の読み取りリクエストの上限があります。 アプリが 1 分間に 350 件のリクエストを送信する場合、追加の 50 件のリクエストは割り当てを超過し、 429: Too many requests HTTP ステータス コード レスポンス。そのような場合は、 指数バックオフ アルゴリズムを使用します。1 分後、 リクエストを再実行できます。ユーザーは、割り当て上限内であれば、同時に複数のリクエストを送信できます。

引用元:使用制限

それほど多くの件数は読み取れないみたいですね。トランザクションデータを読み込むのは向いていないかもしれません。数が少ないマスタデータなどは耐えうるかもしれません。

制限に引っかかると、429 Too Many Requestsというエラーが発生します。エラーが発生すると、一時的に接続できなくなります。

スポンサーリンク

まとめ

今回は、Power BIでGoogleスプレッドシートのデータを読み込む方法を解説しました。

ポイントは次の通りです。

  • URLを指定すれば簡単にデータ取得が可能
  • データ取得にはGoogleアカウントのサインインが必要
  • 大量データの場合はスプレッドシート側の整理(不要行削除)が重要

取得できるデータ件数が少ないのがネックですね。件数が多い場合は、Excelファイルとしてパソコンに保存してPower BIに接続するなど、そもそもGoogle スプレッドシートを使うべきかどうかも検討が必要になります。

Power Queryの学習に役立つおすすめ本
初心者向け 初心者~中級者向け 中級者~上級者向け
Power BI
スポンサーリンク
プロフィール
たがみ

IT業界20年程度のシステムエンジニアです。
構築したシステムのデータ検証をExcelで実施することが多く、検証作業の効率化を模索しているときにPower Queryと出会いました。
Excel業務効率化の手助けになればと当ブログを開設しました。
今ではデータ分析でPower BIを活用しており、Power BI、Excelの両方でPower Queryを活用しています。

たがみをフォローする
シェアする
たがみをフォローする
タイトルとURLをコピーしました