ログイン
スプレッドシートにKeepaグラフを表示しよう
2025年7月以降、スプレッドシート上にランキング変動を載せたKeepaグラフが表示できなくなりました。
ここではその対策として、Keepaグラフにランキングを表示させる2つの方法を説明します。
Graph Image APIを使う
Keepaが公式に提供している方法で、グラフ画像を表示するAPIを利用します。
ただし、一画像を表示する度に1トークン消費します。
そのため、この方法を利用するためにはKeepa APIの有料プランのアップグレードが実用上必要になります。
Graph Image APIの呼び出し方
次のように、URLにKeepa APIキーを埋め込むことでグラフが表示できます。
https://api.keepa.com/graphimage?key=<your_api_key>&domain=<domain>&salesrank=1&asin=<ASIN>
- your_api_key: Keepa APIキーを直接含めます。このため、スプレッドシートを共有する際には注意してください
- domain: 表示する国のコードです。日本の場合は5、アメリカの場合は1です。
- その他のパラメータについては公式ドキュメントをご参照ください。
スプレッドシート上での使い方
スプレッドシートのIMAGE関数に上記のURLを渡すことでセルにKeepaグラフを表示させます。
IMAGE関数にはキャッシュがあるため、再表示の度にトークンが消費されることはありませんが、常にグラフを表示してしまうとすぐにトークンが枯渇してしまいます。そのため、次のような使い方の工夫が必要です。
1. 必要なときに関数をペーストする
グラフを表示したい行のセルに直接次の関数をペーストします(。必要なくなった場合にはセルをクリアします。
=IMAGE("https://graph.keepa.com/pricehistory.png?domain=5&salesrank=1&asin="&INDIRECT("C"&ROW()))
- 複数行を選択して一括して貼り付けることができます
- ASIN_SELL列がC列の場合です。他のパラメータと併せて適宜置き換えてください
- クリップボード拡張ツールを使って、スニペットから呼び出すことを推奨します
2. ARRAYFORMULA関数を使う
新しい列を追加して、以下の関数を4行目のフィルター行に貼り付けます(同様にASIN_SELL列がC列の場合)。
=ARRAYFORMULA(IF(C4:C<>"", IMAGE("https://graph.keepa.com/pricehistory.png?id="&A2&"&domain=5&salesrank=1&asin="&C4:C), ""))
この列は通常は非表示にしておき、フィルターを掛けて表示する行を絞った時に表示するようにします。

Keepaのキャッシュを利用する(LISTIQのChrome拡張使用)
Keepaグラフは、サブスクリプション契約をしたKeepaアカウントにログインした状態でアクセスすると、ランキングが表示されます(つまりスプレッドシート経由だとログイン情報を渡せないためランキングが表示されません)。
ただし、KeepaグラフにはURLに含めたパラメータごとにキャッシュがあり(パラメータは順不同)、このキャッシュはログイン情報に関わらず共通です。
この仕組みを利用して、事前にブラウザ(Chrome拡張)でグラフを一括で表示させ、その後にキャッシュされたKeepaグラフをスプレッドシートに表示させる方法を用意しました。
手順
1. 新しい列を追加し、4行目に以下のARRAYFORMULA関数を入力します
=ARRAYFORMULA(IF(C4:C<>"", IMAGE("https://graph.keepa.com/pricehistory.png?id="&A2&"&domain=5&salesrank=1&asin="&C4:C), ""))
URLのパラメータは自由に変更可能です。例えばアメリカのグラフを取得する場合はdomainを1にしてください。

2. LISTIQのChrome拡張のオプションを開き「KeepaミニグラフのURL」に手順1のオレンジ部分を貼り付けます

この機能では複数列のKeepaグラフをまとめて処理することもできます。この場合は上記オプションに改行区切りで複数のURLを入力してください。
手順1と2は準備になり、手順3以降を毎回実行してください。
3. Keepaグラフを表示したいASINをコピーします

4. Chrome拡張をクリックすると、IDを入力するダイアログが表示されます

IDはランダムで3桁の数字が表示されますが変更することもできます。このIDはKeepaグラフのURLパラメーターに含め、キャッシュされた画像を正しく読み出すために利用します。
5. 「OK」をクリックするとKeepaグラフの画像の表示が行われます

6. スプレッドシート上で先程のIDを入力するとランキングを含めたKeepaグラフが表示されます

IDの入力箇所は手順1の関数の中で「A2」セルと指定しました。これは関数を書き換えることで任意のセルに変更可能です。
注意事項
- Keepaのキャッシュは10分程度しか持ちません。一方でGoogleスプレッドシートのIMAGE関数のキャッシュは数時間継続します。そのため、Chrome拡張での画像表示後はできるだけはやく手順6を行い、スプレッドシート上に表示させてください。
- スプレッドシートのIMAGE関数は画面表示された箇所だけを読みに行きます。キャッシュがない部分を読み込んでしまった場合は、手順3から実行して、別のIDでグラフを表示してください。
- Chrome拡張による画像の表示はチューニングを施し、Keepaのレートリミットにかからない限界の速度で行っています。Keepaのレートリミットは変更される可能性があるので、エラーが出る場合はご連絡ください。こちらで再度チューニングを行います。