図書館業務ノート

GoogleスプレッドシートのIMAGE関数を使ってopenBDの表紙画像を表示する

目次

  1. 手順
    1. おおまかな手順
    2. もっと詳しい手順
  2. 補足説明

手順

おおまかな手順

流れ

  1. 表紙画像を表示したいセルに「=IMAGE([表紙画像URL])」と入力します

以上です。

注記

「[表紙画像URL]」の部分は、openBDの表紙画像URLに置き換えてください。その際、「=IMAGE("https://cover.openbd.jp/9784087211313.jpg")」のようにURLを直接入力してもいいのですが、後述するように他のセルに入力したISBNを参照して、URLの他部分とくっつける方法がおすすめです。

openBDのデータをいくつか確認した限りでは、表紙画像URLはパターンが固定されています。具体的には、「https://cover.openbd.jp/[ISBN].jpg」となっているようです。「[ISBN]」の部分には、各資料の13桁版ISBNを半角で入れます。ハイフンが含まれていてもOKです。

ちなみに、「.jpg」の部分を「_0.jpg」に変えると、縮小されていない大きいサイズの表紙画像を表示できます。ただし、その分データサイズも大きくなり、表示に時間がかかります。特に必要が無ければ、避けたほうがよいです。

Googleスプレッドシートで実際に表紙画像を表示すると、以下のようになります。灰色で塗りつぶされた画像が表示されているものは、openBDに表紙画像データが無いことを意味します。

GoogleスプレッドシートでopenBDの表紙画像を表示した画面

なお、画像を表示しても、行の高さは自動では調節されません。そのため、初期状態では、何の画像か分からないくらい小さく表示されます。画像の内容が判別できる程度に、行の高さを適宜広げてください。対象となる行をすべて選択した状態で、まとめて調節するとよいでしょう。

画像のデータサイズが大きかったり、画像の数が増えたりすると、表示に時間がかかります

IMAGE関数は便利なのですが、画像のデータサイズが大きかったり、画像の数が増えたりすると表示に時間がかかるので、注意が必要です。私の体感では、GoogleスプレッドシートでopenBDの表紙画像を表示する場合、1つのシートにつき100件以内程度に抑えた方が無難だと思います。ただし、通信速度や端末の処理速度にもよるので、あくまで参考程度に捉えてください。

もっと詳しい手順

まずはIMAGE関数を知る

IMAGE関数は、指定されたURLの画像をGoogleスプレッドシートのセルに挿入して表示する関数です。基本的な使い方はシンプルで、セルに「=IMAGE([URL])」と入力するだけです。「[URL]」の部分は、表示したい画像のURLに置き換えてください。関数のカッコ内に文字列として直接入力する場合は、URLを「"」で括ります。また、URLを直接入力せず、他のセルに入力したURLを参照して使うこともできます。

URL以外のパラメーターもありますが、この記事では扱いません。Google公式ドキュメントをご覧ください。

方法(1): 他のセルに入力したISBNを参照し、「&」演算子でURLの他部分とくっつけて使う

私が普段採っている方法です。ISBN用の列を設けるなどしてISBNを他のセルに入力し、IMAGE関数ではそれらを参照するとともに、openBDの表紙画像URLにおけるISBN以外の部分とくっつけて使います。文字列の結合は「&」演算子で行います。以下のスクリーンショット画像では、F2セルに入力したISBNを参照しています。

図書館で管理している書誌データはISBNを含んでいるのが一般的だと思うので、それらを流用できるというメリットがあります。また、表紙画像を表示する資料を追加したり削除したりするときの手間も少ないので、おすすめです。

他のセルに入力したISBNを参照し、「&」演算子でURLの他部分とくっつけた画面

方法(2): 他のセルに入力したURLを参照して使う

URL用の列を設けるなどしてURL部分を他のセルに入力し、IMAGE関数ではそれらを参照して使う方法です。以下のスクリーンショット画像では、F2セルに入力したURLを参照しています。この方法は、openBDの表紙画像URLを別途準備するのが少し手間です。

他のセルに入力したURLを参照した画面

方法(3): セルの参照はせず、URLを直接入力して使う

表紙画像を表示したいセルに、IMAGE関数と一緒にURLを直接入力して使う方法です。この方法は、「方法(2)」と同様、openBDの表紙画像URLを別途準備するのが少し手間です。加えて、表示する表紙画像を変更したいときに、IMAGE関数内のURL部分を書き換える作業も発生します。

セルの参照はせず、URLを直接入力した画面

補足説明

Googleスプレッドシートでの表紙画像表示は、図書館でウェブ版のブックリストを作るときなどに使えると思います。たとえば、「文字だけのリストでは味気ないけど、表紙画像を1つ1つ差し込んでいくのは面倒」というような場面です。

なお、Googleスプレッドシートを使ったブックリストを公開する場合、スプレッドシートのページに直接アクセスしてもらう以外に、自サイトのページに埋め込むという方法もあります。以下に埋め込んでみました。

埋め込み方法については、Google公式ドキュメントの「ドキュメント、スプレッドシート、プレゼンテーションを埋め込む」部分をご覧ください。