画像をVLOOKUP関数のように表示させるテクニック

2017.08.18データベース画像・図形関数その他

Excelは計算式の中で写真などの画像を扱うことはできません。
しかし、今回紹介するテクニックを使えば、「対象のセル内容を画像として表示」させることができます。
使い方によっては、画像を使った非常に操作しやすいExcelシートを作成できます。

今回の題材は、まず、写真入りの花のデータベースがあります。

データベース

 

それに対して、次のような、花の名前を入力したら、振り仮名や季節、写真の表示ができるウィンドウを作成します。

表示画面

 

「表示」シートのセルB2を先頭とした結合セルには、「データベース」シートのA2からA4までの範囲から花の名前が選択できるように入力規則のリストがすでに設定されています。
セルG2を先頭とした結合セルには、「データベース」シートのA2からD4までの中で、セルB2の花の名前に該当する2列目の振り仮名を求めるVLOOKUP関数が入力されています。
セルM3を先頭とした結合セルには、「データベース」シートのA2からD4までの中で、セルB2の花の名前に該当する4列目の季節を求めるVLOOKUP関数が入力されています。
枠線は、[表示]タブの中の[枠線]のチェックを外して、非表示にしています。

セルB4を先頭とした結合セルに、セルB2の花の名前に対応した「データベース」シートのC列の花の写真を表示すれば完成です。
その手順を紹介します。

実践ファイルはこちらからダウンロードできます。

画像にセルを表示する

指定したセル内容を、画像として表示する方法ですが、次の手順で行います。
「データベース」シートの一番上の桜の画像(画像なら3つのうちのどれでも構いません)をコピーします。

元画像のコピー

 

コピーした画像を、「表示」シートのセルB4あたりに貼り付けます。

元画像を貼り付け

 

貼り付けた画像をクリックして選択し、選択したままの状態で、数式バーに「=」を入力します。

数式バーに=

 

そして、「データベースシート」のセルC3をクリックします。この時、画像ではなく、画像の背景のセルをクリックします。
数式バーに「=データベース!$C$3」と入りますので、そのままEnterします。

数式バーからセル参照の入力

 

すると、セル「表示シート」のセルC3の内容が画像となって表示されます。

セルの内容が画像になった

 

お気づきの方になりましたでしょうか。
実は、画像にも計算式を設定できるのです。そしてその計算結果は、参照先のセルに表示している内容そのままを画像として表示します。

他のセルの値を参照し、画像が自動で変わる仕組み

他のセルの値が変わったら、対応する画像に変更したいのですが、上記の方法では、C3の内容しか表示しません。
そこで、VLOOKUP関数のような仕組みが必要です。
ただし、この画像に設定する計算式では、VLOOKUP関数を扱うことができないのです。VLOOKUP関数はあくまで、セルの値を求める関数なのです。
そこで、INDEX関数とMATCH関数を組わせた計算式を使うのですが、そもそも画像に設定する数式では直接関数を入力することができないので、一度、この計算式を「参照画像」という名前で登録します。
そして名前「参照画像」を参照する計算式を画像に設定するという流れをとります。

まず、[数式]タブの中の[名前の定義]ボタンをクリックします。

名前の定義

 

名前に「参照画像」、
数式に「=INDEX(データベース!$C$2:$C$4,MATCH($B$2,データベース!$A$2:$A$4,0))
と設定し[OK]ボタンをクリックします。

名前の設定

 

画像をクリックし、数式バーをクリックし、現在設定されている数式を消します。そして「=参照画像」と入力し、Enterキーで確定します。

名前の参照式

 

これで仕組みとしては完成です。
セルB2の選択肢から、花の名前を選んで、それぞれ対応する画像に変わるか確認してみましょう。

画像の大きさ

画像の大きさは元のセルの大きさと同じ大きさになりますが、拡大、縮小もできます。
セルR13いっぱいまでマウスを使って拡大しましょう。

画像の拡大

 

データベースの元の画像がもともと大きく、それが縮小されていた場合、拡大しても写真の荒さは目立ちません。
しかし、もともとの元の画像が小さいと、拡大した時に荒く見える場合もあるので、元の画像には、大きいものを配置してから縮小するようにしましょう。

枠線の表示

画像として表示されるものは、元のセルの見た目そのままを画像にします。
仮に、「表示」シートの桜の画像を表示したまま、「データベース」シートの桜の画像を少しずらしてみましょう。

元の画像を移動してみる

 

「表示」シートが桜の表示がずれていることが確認できます。

表示もずれる

 

セルそのものを画像として表示していることがおわかりになりましたでしょうか。
確認したら「データベース」シートの桜の画像を元に戻しましょう。

「表示」シートの花の画像に表示されている薄い灰色の線は、「データベース」シートのセルの枠線なのです。
必要ないので表示しないようにしましょう。

枠線

 

「データベース」シートを選択し、[表示]タブの中の[枠線]のチェックを外して、枠線を非表示にしましょう。

枠線の非表示

 

「表示」シートを確認すると、枠線が消えています。

枠線が消えた

 

まとめ

本来、画像のコントロールはExcelの標準機能ではできませんが、このように工夫すれば、VLOOKUP関数で扱うように画像を扱うことができます。
今回のポイントは、画像にも計算式が設定できること、画像に設定したセル参照を求める結果は数値ではなく画像になることを覚えておきましょう。
もしかしてVBAを使わないとできないと思っていたことでも標準機能だけで設定できることもあるのです。

Back to top