スプレッドシートのIMAGE関数でセル内に画像を挿入する方法!

image

SPONSORED LINK

こんにちは、データサイエンティストのたぬ(@tanuhack)です!

スプレッドシートを使っているとどうしても数字や表の羅列になってしまい、それが複雑になればなるほど、パッと見で伝わりにくいシートが完成してしまいますよね。

そこで今回は、スプレッドシートのIMAGE関数を使って、セル内に画像を表示させる方法を紹介します!

画像が人間に与える情報量は、テキストのそれより遥かに多いので無下にできません。

スプレッドシートをより見やすく・より伝わりやすいものにするために、IMAGE関数を是非習得してみてください!

IMAGE関数の使い方

構文
IMAGE(URL, [モード], [高さ], [幅])
オプション 説明
=IMAGE("URL")
=IMAGE("URL", 1)
アスペクト比を保ったまま、セルの大きさに合わせて画像のサイズが調整される(デフォルト)
=IMAGE("URL", 2) アスペクト比を無視して、セルの大きさに合わせて画像のサイズが調整される
=IMAGE("URL", 3) 元の画像サイズのまま挿入され、セルの横幅や高さが足りない場合、トリミングされる
=IMAGE("URL", 4, 高さ, 幅) 画像のサイズをピクセル数で指定する(セルの横幅や高さが足りない場合、トリミングされる)

各モードの使い分け

例として、Googleのロゴをスプレッドシートに表示してみましょう。

image1
画像のURL
https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png
元画像サイズ272×92px
image1-1

実際のスプレッドシートで確認する

ちなみに私は、デフォルトのモード1を多用しています。

理由は、セルのサイズに関係なく、アスペクト比をちゃんと保ったままセル内に画像をちゃんと表示してくれるからです。

image1-2
image1-3

ちなみにテキストの整列も使えます

モード2はアスペクト比がグチャグチャになるので、自分的には論外。モード3は元画像が小さかったらOK。モード4はいちいち揃えるのが面倒なんですよね。

まあ、実際どのモードを使うかは、人それぞれ・ケースバイケースだと思うので、好きに使ってください。

IMAGE関数の注意点

注意点1:IMAGE関数は、公開されている画像URLしか表示できない

  • スプレッドシートにアップロードした画像
  • ログインが必要なWEBサービスへアップロードした画像

これらはIMAGE関数で表示できません。

自分でサーバーを持っている人は、サーバー内に画像を保存してそこのURLを直接入力すれば良いです。

ですが、サーバーを持っている人は限られていると思うので、Googleドライブの画像を表示させる方法(※後述)をおすすめします。

注意点2:外部から参照されると困る画像は表示しない

インターネット上(スプレッドシート)で画像を扱うということは、当然、著作権やプライバシーを考えなければいけません。

個人のプライバシーに関わる画像や著作権に触れる可能性のある画像は、IMAGE関数で表示させない方が無難です。自分の身は自分で守りましょう。

Googleドライブの画像を表示する方法

IMAGE関数でGoogleドライブに保存している画像を表示させるには、ちょっとしたテクニックが必要です。

例として、ドライブにある『tanu.gif』という画像をIMAGE関数で表示させるとします。

image2-1

[右クリック]→[共有可能なリンクを取得]

すると、『https://drive.google.com/open?id=18_qXBm8Xmm72AujK1vdYhzqrZQ9LRIal』という共有リンクを取得できました。

さっそくIMAGE関数で表示させてみましょう。

image2-2

B2セルに数式を入力しているが、表示されていない

それもそのはず。このURLは『画像のプレビュー用』であり、このままではセル内表示に使えません。以下の赤文字部分を修正してください。

BEFORE
=IMAGE("https://drive.google.com/open?id=18_qXBm8Xmm72AujK1vdYhzqrZQ9LRIal")
AFTER
=IMAGE("https://drive.google.com/uc?export=download&id=18_qXBm8Xmm72AujK1vdYhzqrZQ9LRIal")
image2-3

ちゃんと表示されていますね!

IMAGE関数にハイパーリンクを適用する

これはHYPERLINK関数を使えばOKです。

構文
=HYPERLINK(URL, [リンクラベル])
=HYPERLINK("遷移させたいURL",IMAGE("画像URL"))

例として、自分のホームページに遷移させる数式を作ってみました。

image3

=HYPERLINK("https://tanuhack.com/",IMAGE("https://drive.google.com/uc?export=download&id=18_qXBm8Xmm72AujK1vdYhzqrZQ9LRIal"))

さいごに

今回はIMAGE関数を使って、スプレッドシートのセルに画像を挿入させる方法を紹介しました。

わかりやすい&見やすいシート作りを心がけ、データアレルギーの人が数字を見てアイディアを広げられるように努めましょう!

それでは(^^)

SPONSORED LINK

image

Time Ticketはじめました

スプレッドシートで、こんなお悩みありませんか?

  • 「シートの読み込みを高速化させたい」
  • 「あるサイトのデータを自動で定期的にスプレッドシートに記入させたい」
  • 「別のスプレッドシートからデータを持ってきたい」
  • 「条件付き書式を使って、自動でシートに色をつけたい」
  • and more …

当講座に対してのレビュー

ABOUTこの記事を書いてる人

たぬ

26歳。作業の90%をPythonにやらせているデータサイエンティスト兼ブロガー。 単純作業を自動化させ、クリエイターの生産性を上げるために当ブログを設立。毎月15万人に読まれています。 ストレングスファインダー:戦略性・最上志向・目標志向・未来志向・個別化