
Webページからデータを抽出するスクレイピングを、GoogleスプレッドシートのIMPORTHTML関数 で実行する方法をご紹介します。 IMPORTHTML関数がエラーになる場合の解決方法や、必要なデータの見つけ方(デベロッパーツールの使い方)についても解説しているので、ぜひ参考にしてみてください。
IMPORTHTML関数の基本的な使い方

IMPORTHTML関数は、HTMLページ内の「表(テーブル)」や「リスト」からデータを自動でスプレッドシートにインポートします。
例:内閣府ホームページ から「国民の祝日・休日」
=IMPORTHTML("https...", "table", 1)
💡 ポイント:インポート元のページが更新されると、スプレッドシートのデータも更新されます。
IMPORTHTML関数の引数:(URL, クエリ, 指数)
【引数の解説】
① URL
インポートしたいページのURLをそのままコピーし、""で囲んで記述します。
② クエリ
目的のデータがどのような形式か、以下のいずれかを指定します。
"table": 表(HTMLの<table>タグで囲まれたデータ)"list": リスト(HTMLの<ul>や<ol>、<dl>タグなどで囲まれたデータ)
③ 指数
対象の表やリストが、そのページのHTMLソース内で「上から何番目に登場するか」を指定します。 ページ内で1番最初に出てくる表をインポートしたい場合は 1 を指定します。
「指数」と「クエリ」を確認する方法
方法①:ページを目視で確認する

□ クエリ:
- 該当のページを開き、インポートしたい部分が「表(
table)」か「リスト(list)」のどちらの形式かを目で見て確認します。
□ 指数:
- インポートしたい部分が、ページ全体にある表(またはリスト)の中で、上から数えて何番目にあるかを数えます。最初に出てきた表なら
1、2番目なら2を関数に入れます。
方法②:デベロッパーツールで確認する

【手順】
- 該当のWebページで
[F12]キーを押し、デベロッパーツールを開きます。 -
[Ctrl]+[F]を押して検索ボックスを出し、検索窓にtableまたはlistと入力します。 - 検索窓の横にある三角ボタン
[▼]をクリックして番号を移動させ、該当するコードの部分にカーソルを当てると、実際のページの該当箇所が青くハイライトされます。
⚠️ 注意:ツールの数字と関数の数字のズレ
ツールで検索した番号をそのまま指数として入れると、デザインなどの関係で実際のページとズレることがあります。コードにカーソルを合わせ、ハイライトされる実際の画面を見ながら「何番目か」を確認します。
IMPORTHTML関数のエラーと解決方法
「#ERROR!」や「#NAME?」になる場合

原因:スペルミスかダブルクォーテーションの付け忘れ
- 解決方法: URLとクエリを
""で囲って記述します。(例:=IMPORTHTML("https...", "table", 1))
「#N/A(インポートしたコンテンツは空です。)」になる場合

原因①:指定した番号(指数)が存在しない
- 解決方法:ページ内にそのクエリが存在しない、または指定した番号が大きすぎる場合に発生します。「方法①〜②」を参考に、クエリや指数が正しい番号になっているか確認します。
原因②:WebサイトがJavaScriptで動いている
- 解決方法:該当のサイトが「JavaScript」で生成されている可能性があります。この仕組みのサイトからはデータを取得できないため、手動でコピーします。
「#REF!」になる場合

原因:データを展開する先に、別の文字が入力されている
- 解決方法:取得したデータを展開する先に、ほかの文字や数式が残っていると、データが展開できずエラーになります。余分なデータを削除し、データの展開先を空けておきます。