- 公開日:
エクセルのVLOOKUP関数で画像を取得する方法
この記事では、エクセルのVLOOKUP関数で画像を取得する方法をご紹介します。
社員名簿などのリストがある場合、VLOOKUP関数を使って顔写真などの画像データを取得することができると便利です。
以下では、検索値に紐づく画像や写真をマスタシートから取得して、検索値を入れ替えると自動で画像も入れ替わる方法をご説明します。
VLOOKUP関数で画像の取得はできる?
VLOOOKUP関数はデータ検索によく使われる関数ですが、検索値に紐づいた画像を取得することはできません。
ただし、別の関数を使うことでVLOOKUP関数の検索に似た方法で画像を抽出することができます。
エクセルのVLOOKUP関数で画像を取得する方法

上記の画像は、「園児検索」シートの検索値(A2セル)に紐づくネームシールの画像、組、名前を「マスタ」シートから抽出しています。
以下では、VLOOKUP関数とINDIRECT関数を使って画像を抽出する方法をご紹介します。

「マスタ」シートからデータを抽出するため、「園児検索」シートに上記の画像のような表を用意します。

「マスタ」シートに移動します。
Ctrlを押しながら画像をすべて選択し、Ctrl+Xで画像を切り取ります。
セルに画像を貼り付けたいので、ドラッグして移動するのではなく必ず画像を「切り取り」してください。

B2セルを選択して、Ctrl+Vで貼り付けます。

セルに名前を付けていきます。
①検索値を探す範囲と画像が貼り付けられている範囲(例:A2セルからB5セル)、②数式タブ、③選択範囲から作成の順に選択します。

「選択範囲から名前を作成」ダイアログボックスが表示されました。
①左端列を選択し、②OKボタンを押します。
データの範囲に合わせてどこから名前を作成するか選択してください。

作成した名前が正しく設定されているか確認します。
①数式タブ、②名前の管理の順に選択します。

「名前の管理」ダイアログボックスが表示されまました。
「名前」と「参照範囲」を確認し、閉じるボタンを押します。
「名前」は検索値に該当する値、「参照範囲」は画像が貼り付けられたセルです。

「園児検索」シートに移動して、検索値をリスト化します。
①検索値に指定するセル(例:A2セル)を選択します。
②データタブ、③データの入力規則の下矢印、④データの入力規則の順に選択します。

「データの入力規則」ダイアログボックスが表示されました。
①入力値の種類でリストを選択し、②元の値で上矢印ボタンを押します。

「マスタ」シートに移動します。
①検索値を探す列(例:A2セルからA5セル)を選択して、②「データの入力規則」ダイアログボックスの下矢印ボタンを押します。

「データの入力規則」ダイアログボックスに戻りました。
OKボタンを押します。

A2セルがリスト化されました。次に、セルに名前を付けていきます。
①A2セルを選択します。
②数式タブ、③名前の定義の下矢印、④名前の定義の順に選択します。

「新しい名前」ダイアログボックスが表示されました。
①名前で動物、②参照範囲で「=園児検索!$A$2」を入力して、③OKボタンを押します。

B2セルにも名前を付けていきます。
①B2セルを選択します。
②数式タブ、③名前の定義の下矢印、④名前の定義の順に選択します。

「新しい名前」ダイアログボックスが表示されました。
①名前で画像、②参照範囲で「=INDIRECT(動物)」を入力して、③OKボタンを押します。
INDIRECT関数の引数に指定する値は、A2セルで定義した名前を入力して下さい。
INDIRECT関数とは、引数に指定した文字列でセル参照ができる関数です。書式は、「=INDIRECT(参照文字列,[参照形式])」です。
引数や使い方の詳細は、以下の記事でご紹介しています。
ExcelのINDIRECT関数の使い方|セルや他のシートを参照する

「マスタ」シートに移動します。
B2セルをCtrl+Cでコピーします。
画像ではなく、必ずB2セルをコピーして下さい。

「園児検索」シートに移動します。
①画像を表示したいセル(例:B2セル)を選択します。
②ホームタブ、③貼り付けの下矢印、④リンクされた図の順に選択します。

B2セルに画像が貼り付けられました。
数式バーを修正する前に、A2セルにリストの任意の値(例:ねこ)を選択します。
リストの値を表示する前に、数式バーを修正しようとすると下記の画像のような「Microsoft Excel」ダイアログボックスが表示されることがあります。

「Microsoft Excel」ダイアログボックスが表示された場合は、OKボタンを押してリストから任意の値を選択してください。

①画像を選択し、②数式バーに「=画像」を入力します。
数式バーに入力する「=」に続く文字列はB2セルで定義した名前を入力して下さい。

C2セルに、VLOOKUP関数を使ってマスタシートから「組」を抽出します。
C2セルに「=VLOOKUP(動物,マスタ!$A:$D,3,FALSE)」を入力して、Enterを押します。
検索値は、セルの名前を定義しているので「動物」と表示されています。

D2セルに、VLOOKUP関数を使ってマスタシートから「名前」を抽出します。
D2セルに「=VLOOKUP(動物,マスタ!$A:$D,4,FALSE)」を入力して、Enterを押します。
B2セル、C2セル、D2セルに検索値に紐づく値がそれぞれ抽出されました。
以下で、A2セルの値を入れ替えても検索値に紐づく値が抽出されるか確認していきます。

A2セルのリストを「うさぎ」に入れ替えました。
「マスタ」シートから「うさぎ」に紐づくネームシール、組、名前を抽出することができました。
VLOOKUP関数とINDIRECT関数を使うことで、検索値を入れ替えても紐づく画像とデータを取得することができました。