読者です 読者をやめる 読者になる 読者になる

CGメソッド

CG制作に関してのヒント

MENU

【Google Spreadsheet】セル内で画像表示!IMAGE関数の使い方

Google Google-Google Spreadsheet Google-Google Drive

follow us in feedly

エクセルも同様なのですが、普通に画像を挿入してリストを作ろうとしても、画像がぴったり揃わなかったり、揃ってもセルのサイズを変えるとずれたり、コピーしていく内に重なったったりと、あまり画像表示には向いていないなと思うことがあります。

唯一、セル内で画像を表示できるのは、GoogleスプレッドシートのIMAGE関数です。画像を表示するにはこれがベストですが。

ただのIMAGE関数には一つだけ問題があります。

IMAGE関数の表示

上下左右ピッタリの状態から

f:id:min0124:20170320220511p:plain

セルの幅を縮めると上下に余白、左右ぴったりに変化

f:id:min0124:20170320220813p:plain

逆にセルの幅を広げると、左右に余白、上下ぴったりに変化

f:id:min0124:20170320220839p:plain

とセル内に収まるように画像が表示されます。

IMAGE関数の使い方

  • 使い方は簡単。=IMAGE("画像のURL")と入力するだけです。

詳しくは

IMAGE - Docs editors Help

URL先から読み込んで画像を表示するので、表示に少し時間がかかります。

そして公開している画像URLにしか表示することができません!

Google Driveにある画像を表示する方法

共有可能なリンクを取得から、リンクを取得します

https://drive.google.com/open?id=画像ID

こちらは画像のURLではないので、下記のように変更することで画像URLを取得します。

http://drive.google.com/uc?export=view&id=画像ID

最後にIMAGE関数を挿入

=IMAGE("http://drive.google.com/uc?export=view&id=画像ID")

IMAGE関数の欠点について

IMAGE関数は公開している画像URLにしか表示することができません。

つまりリンクを知っていれば誰でも閲覧できる状態の画像しか表示されません。

たとえば「共有可能なリンク状態でない画像のURL」や「G Suite内の画像」だったり、限定したユーザーしか閲覧できない状態ではIMAGE関数は使えません。

以前どうしてもIMAGE関数が使いたくて、ログインの必要なWEBサービスへアップした画像URLを試してみましたが、表示できたのはサービスにログインしなくても誰でも閲覧できる状態になってしまっている画像でした。

ということで、パブリックに公開してはまずい画像には使わないことをおすすめします。

HTML化して限定公開にする

手間がかかりますが、最終的にHTML化するという方法もあります。

スプレッドシートで顔写真付き座席表を作った - Qiita