Microsoft Excel(エクセル)にWEBページの画像を表示させたいと思ったことはないでしょうか。
こんなとき、IMAGE関数(イメージ関数)を利用すると、指定したURLから画像を取得して、セルに画像を埋め込むことができます。
Microsoft365のサブスクやWEB版のエクセルを利用している人であれば、このIMAGE関数を利用して、画像を値のように取り扱うことができます。
例えば、IMAGE関数を使えば、下の実例ように、HPの画像をエクセルのセルにリンクして埋め込むことができます。
この記事では、IMAGE関数の使い方と、IMAGE関数をIF関数やVLOOKUP関数と組み合わせた使い方を中心に解説していきます。
IMAGE関数(イメージ)の使い方
それでは、エクセルのIMAGE関数の使い方を詳しく紹介します。
上述のとおり、IMAGE関数はMicrosoft365のサブスクかWEB版のエクセルを利用しているユーザーが利用することができます。
IMAGE関数とは、URLから画像を取得してセルに埋め込むことができる関数です。画像のファイル形式は、JPEG、GIF、PNG、などに対応しています。
取り込んだ画像は、セルの大きさに合わせて自動でサイズ調整されるので、表の枠内に画像を利用する際に役立ちます。
IMAGE関数の構文と引数
IMAGE関数の構文(書式)と引数は以下のとおりです。
=IMAGE(ソース,[代替テキスト],[サイズ],[高さ],[幅])
「ソース」「代替テキスト」「サイズ」「高さ」「幅」の5つの引数があり複雑に感じるかもしれませんが、「ソース」以外の後半の4つの引数は省略可能です。
そのため、基本的には、「=IMAGE(URL)」というシンプルな形で利用します。
第1引数「ソース」:「https://」から始まる画像のURLか、URLが入力されたセル番号を指定します。数式内でURLを直接指定したい場合は、半角の「"」(ダブルクォーテーション)で囲んでください。(例:B3,”https://・・・”)
第2引数「代替テキスト」:省略可能です。画像を説明する代替テキストです。
第3引数「サイズ」:省略可能です。画像のサイズを指定します。0、1,2、3のどれかを指定します。
0、もしくは省略・・・ URLの画像の縦横比率を維持してセル内に収めます
1・・・ URLの画像の縦横比率を無視してセル内に収めます
2・・・URLの画像のサイズで配置
3 ・・・ 第4引数で指定した[高さ]と[幅]で配置
第4引数「高さ」:省略可能です。画像の高さをピクセル(pt)単位で指定します。
第5引数「幅」:省略可能です。画像の幅をピクセル(pt)単位で指定します。
画像のURL(アドレス)を入手する方法
WEBページに掲載されている画像のURLを入手・コピーする方法を紹介します。
今回は、説明用に下のフリーイラスト素材サイト【いらすとや】さんのWEBページを使用します。
【無料イラスト素材サイト いらすとや】
https://www.irasutoya.com/p/food.html
入手方法は簡単です。使いたい画像のWEBサイトに移動してください。
画像を右クリックし、右クリックメニューの「画像アドレスをコピー」もしくは[リンクのアドレスをコピー]を押すと、URLのアドレスがコピーされます。
あとは、「Ctrl+V」キーを使うことで、エクセルにアドレスを貼り付けすることができます。
セルをダブルクリックしてからアドレスを貼り付けすると、下の図のB12セルのように、アドレスが青色となりリンクされた状態で貼り付けされます。
ダブルクリックせずにアドレスを貼り付けすると、文字の色は変わらず、リンクは発生しません。ただ、IMAGE関数を使う上では、リンクの有無は関係ないのでどちらでも大丈夫です。
IMAGE関数の使い方(基本)
IMAGE関数の使い方を紹介します。
上記で紹介しましたが、IMAGE関数は基本的には「=IMAGE(URL)」というように利用します。
下の例のように、D3セルに貼り付けされたURLに対して、IMAGE関数「=IMAGE(D3)」と入力します。
そうすると、B3セルのサイズに合わせてURLの画像が挿入されます。このように、URLのみを指定してIMAGE関数を使うと、元の画像の縦横比率は崩れません。
IMAGE関数の中にURLのアドレスを入力することもできます。その場合は、URLの前後に”(ダブルクォーテーション)で挿入してください。
そうすると、下のようにセル内に画像を挿入することができます。
IMAGE関数の「サイズ」を指定する方法
IMAGE関数の第3引数:サイズに「0~3」の数値を使用することで挿入する画像のサイズを指定することができるので、使い方を解説します。
第2引数は利用しないので、第1引数の後のカンマ(,)は2つ入力してください。
【第3引数:0または省略】
元のURLの画像の縦横比率のままセル内に画像が配置されます。
=IMAGE(F3,,0)
【第3引数:1】
元のURLの画像の縦横比率を無視して、セルの縦横比率に合わせて画像がセル内に配置されます。
=IMAGE(F3,,1)
【第3引数:2】
元のURLの画像のサイズで画像が埋め込まれます。そのため、元画像が大きい場合は、セルから画像がはみ出します。
=IMAGE(F3,,2)
【第3引数:3】
第4引数「高さ」と第5引数「幅」に、ピクセル単位で数値を指定することで、挿入する画像のサイズをダイレクトに指定します。
=IMAGE(D3,,3,140,80)
IMAGE関数で画像が表示されない・使えない場合
IMAGE関数で画像が表示されない・使えない場合は、エクセルのバージョンがMicrosoft365以外である可能性があります。
バージョンの確認方法が分からない方は、『ホーム』タブ⇒『その他』⇒『アカウント』で以下の画面から確認することが出来ます。下の例であれば、バージョンがExcel2019のため、IMAGE関数は使用できません。
また、IMAGE関数の結果が「CONNECT!」と表示される場合は、ネット接続が切断されている可能性が高いので、Wi-Fiなどがつながっているか再確認してください。
もし、「#BLOCKED!」と表示される場合は、セキュリティ設定によってセル内の画像ファイルへのアクセスがブロックされています。
IMAGE関数でスピルを利用
IMAGE関数は複数のセルに数式の結果を表示する「スピル」機能でも利用することができます。
下の図のように、C3セルに「=IMAGE(E3:E7)」と指定して、画像のURLが挿入されたすべてのセルを指定します。
そうすると、数式を挿入したのはC3セルのみですが、C4セルからC7セルのすべてに画像が埋め込まれます。
IMAGE関数を使った2つの事例を紹介
IMAGE関数で埋め込まれた画像をセルの値のように利用して、IF関数やVLOOKUP関数と組み合わせて利用することもできます。
IF関数、VLOOKUP関数と組み合わせた事例をそれぞれ紹介します。
IF関数とIMAGE関数で、条件に合う画像を表示
IF関数とIMAGE関数を組み合わせることで、条件に合う画像を表示させることができます。
まず、下の表のG列にIMAGE関数を使って画像を挿入します。
次に、点数の大きさによって、「80点以上であれば”笑顔”」「49点以下であれば”残念顔”」「それ以外の点数であれば”真顔”」の画像が表示されるように、以下のIF関数をD3セルに挿入します。
=IF(C3>=80,$G$3,IF(C3<=49,$G$5,$G$4))
IF関数を確定すると、C列の点数によって「笑顔マーク」「残念マーク」「真顔マーク」の3つの画像のどれかが表示されます。
VLOOKUP関数とIMAGE関数で、画像を抽出
続いて、VLOOKUP関数とIMAGE関数を利用して、表から画像を抽出する方法を紹介します。
まず、IMAGE関数を使って、D列に商品番号に合った果物の画像を埋め込みます。
次に、G3セルに以下のVLOOKUP関数を挿入して、表の中から商品番号にあった画像を検索します。
=VLOOKUP(F3,B2:D7,3,FALSE)
そうすると、下の図のように、商品番号「4」のリンゴの画像がVLOOKUP関数によって抽出(検索)することができました。
関数を使わずに、セルに画像を埋め込むことも可能
今回は、IMAGE関数の使い方を紹介しました。
Microsoft365を利用できるユーザーであれば、「挿入」タブの中の「図」⇒「画像」にある「セルに配置」ボタンを使うことで、Excelに貼り付けた画像をセル内に埋め込むことができます。
そうすると、IMAGE関数を使ってURLから画像を取得しなくても、下の図のように、セルの中に画像を埋め込むことができます。
この機能の使い方は、以下の記事で詳しく紹介していますので、興味のある方は合わせて参考にしてください。