「ニュースサイトやブログの更新を毎日チェックするのが面倒」。そんな経験はありませんか。
ブックマークを順番に開いて確認する方法もありますが、サイトが増えるほど時間がかかります。
そんなときに便利なのが IMPORTFEED関数 です。RSSやATOMフィードのURLを指定するだけで、最新の記事タイトルや更新日時をスプレッドシートに自動で取り込めます。
この記事では、スプレッドシートのIMPORTFEED関数の基本から実務で役立つ活用パターンまで解説します。
IMPORTFEED関数とは?
IMPORTFEED関数(読み方: いんぽーと ふぃーど)は、RSS/ATOMフィードの情報をスプレッドシートに取得する関数です。
名前は英語の「import(取り込む)」と「feed(フィード=Webサイトの更新情報を配信する仕組み)」が由来です。
RSSやATOMフィードとは、Webサイトが公開している更新情報の配信データです。ニュースサイトやブログの多くがこの仕組みを持っています。
IMPORTFEED関数にできることをまとめると、次のとおりです。
- フィードのタイトル・説明文・URLなどの基本情報を取得する
- 各記事のタイトル・公開日時・概要・リンクを一覧で取得する
- 取得するアイテム数を指定して、最新N件だけを取り込む
- 複数サイトのフィードを1つのシートにまとめて監視する
NOTE
IMPORTFEED関数はGoogleスプレッドシート専用の関数です。Excelには同じ関数は存在しません。ExcelでRSSフィードを取得するには、Power Queryや外部ツールを使う必要があります。
IMPORTFEED関数の書き方(構文と引数)
基本構文
=IMPORTFEED(URL, [クエリ], [ヘッダー], [アイテム数])
カッコの中に最大4つの引数を指定します。必須は第1引数のURLだけで、残りは省略可能です。
引数の説明
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| URL | 必須 | RSS/ATOMフィードのURL。文字列で指定 |
| クエリ | 任意 | 取得する情報の種類を指定(省略時は "items" と同じ動作) |
| ヘッダー | 任意 | 見出し行を含めるか。TRUE / FALSE(省略時は FALSE) |
| アイテム数 | 任意 | 取得するアイテム数。省略時はフィード内の全アイテム |
第1引数には、対象のフィードURLを指定します。多くのサイトでは /feed や /rss をURLの末尾に付けるとフィードにアクセスできます。
第2引数のクエリで、取得したい情報の種類を細かく指定できます。詳細は次のセクションで説明します。
クエリの種類
クエリには次の値を指定できます。
| クエリ | 取得内容 |
|---|---|
"feed" | フィード自体の情報(タイトル・説明文・URLなど)を1行で返す |
"feed title" | フィードのタイトルだけを返す |
"feed description" | フィードの説明文だけを返す |
"feed url" | フィードのURLだけを返す |
"feed author" | フィードの著者名を返す |
"items" | 各アイテム(記事)の一覧を返す(省略時のデフォルト) |
"items title" | 各アイテムのタイトルだけを返す |
"items description" | 各アイテムの概要だけを返す |
"items url" | 各アイテムのURLだけを返す |
"items created" | 各アイテムの公開日時だけを返す |
"feed" 系はフィード全体の情報、"items" 系は個々の記事情報を返します。
TIP
クエリを省略すると
"items"と同じ動作になり、タイトル・URL・公開日時・概要がまとめて返されます。
IMPORTFEED関数の基本的な使い方
まずはシンプルな例で動きを確認してみましょう。
フィードの全アイテムを取得する
もっとも基本的な使い方は、URLだけを指定する方法です。
=IMPORTFEED("https://example.com/feed")
フィード内のすべてのアイテム(記事)が取得されます。タイトル・URL・公開日時・概要が列ごとにセルへ展開されます。
見出し行を付けて取得する
第3引数を TRUE にすると、1行目に列の見出しが付きます。
=IMPORTFEED("https://example.com/feed", "items", TRUE)
「Title」「URL」「Date Created」「Summary」のような見出しが自動で入ります。どの列が何のデータかがひと目でわかるので、最初はTRUEにしておくのがおすすめです。
最新5件だけ取得する
第4引数でアイテム数を指定すると、最新N件だけを取得できます。
=IMPORTFEED("https://example.com/feed", "items", TRUE, 5)
フィード内の最新5件が取得されます。件数が多すぎるとシートが見づらくなるので、用途に合わせて絞り込みましょう。
フィードのタイトルを取得する
サイト名だけを取得したい場合は、クエリに "feed title" を指定します。
=IMPORTFEED("https://example.com/feed", "feed title")
フィードに設定されているサイト名が1つのセルに返されます。
セル参照でURLを指定する
URLが長くなる場合は、別のセルにURLを入力しておくと便利です。
=IMPORTFEED(A1, "items", TRUE, 10)
A1セルにフィードURLを入力しておけば、数式がすっきりします。複数のフィードを管理するときに特に役立ちますよ。
IMPORTFEED関数の実践的な使い方・応用例
複数サイトのニュースを1シートにまとめる
業界ニュースや競合ブログの更新を1つのシートで監視できます。
A列にサイト名、B列にフィードURLを入力しておき、D列以降にIMPORTFEED関数を配置します。
=IMPORTFEED(B2, "items title", FALSE, 5)
各サイトの最新記事タイトル5件がD列に並びます。朝一でシートを開くだけで、主要サイトの更新状況を一覧で確認できます。
競合ブログの更新を監視する
競合サイトのRSSフィードを登録しておけば、新しい記事が公開されたときにスプレッドシート上で気づけます。
=IMPORTFEED("https://competitor-blog.com/feed", "items", TRUE, 10)
タイトルと公開日時がわかるので、競合がどんなテーマでどのくらいの頻度で記事を出しているかを把握できます。マーケティング担当者の方には特に便利ですよ。
記事タイトルにリンクを付けて一覧にする
IMPORTFEED関数でタイトルとURLを別々に取得し、HYPERLINK関数で組み合わせると、クリックで記事に飛べるリンク一覧を作れます。
C列にタイトル、D列にURLを取得している場合は次のように書きます。
=HYPERLINK(D2, C2)
これで「タイトルをクリックすると元記事が開く」一覧表の完成です。
公開日時で並べ替えて最新順にする
SORT関数と組み合わせれば、取得した記事を公開日時の新しい順に並べ替えられます。
=SORT(IMPORTFEED("https://example.com/feed", "items"), 3, FALSE)
第3列(公開日時)を基準に降順ソートしています。複数サイトのフィードをまとめた場合、最新記事が上に来るので確認しやすくなります。
よくあるエラーと対処法
IMPORTFEED関数で「データが取得できない」ケースをまとめました。
| 症状 | 原因 | 対処法 |
|---|---|---|
#N/A エラー | フィードURLが間違っている | ブラウザでURLを開いてXMLデータが表示されるか確認する |
#N/A エラー | サイトがRSS/ATOMフィードを公開していない | すべてのサイトがフィードを提供しているわけではない。別のURLを試すか、確認する |
#VALUE! エラー | クエリの文字列が正しくない | "items" "feed" など正しいクエリ文字列を指定する |
| データが更新されない | キャッシュが残っている | スプレッドシートを再読み込みする。または数式を一度消して再入力する |
| 文字化けする | フィードのエンコーディングが未対応 | 一部の古いフィードでは文字化けが発生する。別のフィードURLがあれば試す |
| 空のデータが返る | フィードにアイテムが含まれていない | サイト側でフィードが正しく生成されているか確認する |
#N/A エラーが最もよく出ます。原因の多くは「URLの誤り」か「フィードが存在しない」です。
まずはブラウザでフィードURLにアクセスしてみてください。XMLデータが表示されれば、フィードは有効です。404エラーやHTMLページが表示される場合は、URLが間違っています。
TIP
フィードURLがわからない場合は、サイトのトップページURLの末尾に
/feedや/rssを付けてみてください。WordPressで運営されているサイトではサイトURL/feed/でアクセスできることが多いです。
Excelとの違い
IMPORTFEED関数はGoogleスプレッドシート専用の関数です。Excelには存在しません。
| 項目 | Googleスプレッドシート | Excel |
|---|---|---|
| IMPORTFEED関数 | 使える | なし |
| RSSフィード取得の代替手段 | IMPORTFEED関数 | Power Query / VBAマクロ / 外部アドイン |
| 操作方法 | セルに数式を入力するだけ | Power Queryの設定やVBAコードが必要 |
| 自動更新 | シート再読み込み時 | 手動更新またはVBAで定期実行 |
ExcelでRSSフィードを取得したい場合は、Power Queryの「Webからデータを取得」でフィードURLを指定する方法があります。ただし、XMLの解析設定が必要で、IMPORTFEED関数のように数式1つで完結する手軽さはありません。
RSSフィードの取得を数式だけでやりたいなら、スプレッドシートのIMPORTFEED関数が圧倒的に便利です。
IMPORT系関数の使い分け
Googleスプレッドシートには、IMPORTFEED以外にもデータを取得するIMPORT系関数があります。目的に応じて使い分けましょう。
| 関数 | 取得対象 | 用途例 |
|---|---|---|
| IMPORTFEED | RSS / ATOMフィード | ニュースサイトやブログの更新情報を取得 |
| IMPORTHTML | HTMLのtable / list | Webページの表やリストを取得 |
| IMPORTDATA | CSV / TSVデータ | 公開されているCSVファイルを取得 |
| IMPORTXML | XMLデータ / XPath指定 | 特定のHTML要素をXPathで指定して取得 |
| IMPORTRANGE | 別のスプレッドシート | 別ファイルのセル範囲を取得 |
使い分けのポイント: RSSフィードの更新情報が欲しいならIMPORTFEED、Webページの「表」を取り込みたいならIMPORTHTML、CSVファイルならIMPORTDATA、特定のHTML要素をピンポイントで取りたいならIMPORTXMLです。
IMPORTFEED関数はフィードの構造を自動で解析してくれるので、XMLの知識がなくてもRSS/ATOMフィードを扱えます。XMLを自分で解析したい場合はIMPORTXML関数を使いましょう。
まとめ
IMPORTFEED関数は、RSS/ATOMフィードの情報をスプレッドシートに取り込める便利な関数です。
ポイントを整理します。
- 構文は
=IMPORTFEED(URL, クエリ, ヘッダー, アイテム数)で、必須引数はURLの1つだけ - クエリに
"feed"を指定するとフィードの基本情報、"items"で各記事の一覧を取得する "items title"や"items url"など、個別の情報だけを取り出すこともできる- 第3引数をTRUEにすると見出し行が付く
- 第4引数で取得件数を制限できる
- Googleスプレッドシート専用の関数で、Excelには存在しない
- 複数サイトのフィードをまとめれば、ニュース監視や競合チェックに活用できる
- IMPORT系関数(IMPORTHTML / IMPORTDATA / IMPORTXML / IMPORTRANGE)と目的に応じて使い分ける
まずは好きなニュースサイトやブログのフィードURLで =IMPORTFEED("URL", "items", TRUE, 5) を試してみてください。最新記事の一覧がセルに展開される手軽さを実感できますよ。
