【Excel】VLOOKUPの参照先を自動で切換える

VLOOKUP関数で、引数で ”範囲” の項目がありますが、
INDIRECT関数を併用する事で、
この参照する “範囲” を自動で切換える事が出来ます。
 

広告

例題

Excel_VLOOKUP_参照先を自動で切換える_1
下部にある見出しが青い2つの表(シリーズA&B)から、見出しが黄色い表(売上表)に必要項目をVLOOKUP関数で引っ張って場合、参照するデータをシリーズによって青の2つの表を自動で切換えて拾ってくるには

例えば、↑の表のような、シリーズによって単価や他項目が異なる商品の
売上表を作成する場合、以下の手順で項目・数式を入力する事で
ひとまとめに表を作成する事が出来ます。

【手順】
※「品名」だけは分かっている状態だとします。
1.各シリーズの内容が記入された表に名前を付ける。
例題で言えば、
「Aシリーズ」に関しては、セル【C10:E12】を選択し、左上の名前ボックスに、仮に『A』と名前を付ける。
「Bシリーズ」に関しては、セル【C16:E18】を選択し、左上の名前ボックスに、仮に『B』と名前を付ける。
2.セル【B3】に先程付けた、「シリーズ名」を記入する
3.セル【D3】には
 =VLOOKUP(C3,INDIRECT(B3),2,0)
セル【E4】には
 =VLOOKUP(C3,INDIRECT(B3),3,0)
と記入する

以下、実際の操作画面を切り抜いたモノです。
ご参照ください。

Excel_VLOOKUP_参照先を自動で切換える_2
VLOOKUPの範囲に指定する各表を1つずつドラッグし、左上の名前ボックスに名前を入れる。シリーズ「B」の表も同じようになまえを付ける。
Excel_VLOOKUP_参照先を自動で切換える_3
参照する表の名前をB列に記入し、必要箇所に数式を入力する
Excel_VLOOKUP_参照先を自動で切換える_7
Excel_VLOOKUP_参照先を自動で切換える_8
その他のセルにも同様に数式を入れて [コピーして] 完成です

 
これで、B列で指定されたサイズ表から
単価や必要項目のデータを引っ張ってくることができたはずです。
VLOOKUP関数の「範囲」項目に、INDIRECT関数で対象の表を
B3(B列)で指定された表にスライドさせることが出来る
というわけです。

Excel_VLOOKUP_参照先を自動で切換える_4
今回の数式の構成です

 

INDIRECT関数とは?

=INDIRECT ( 参照文字列 , [参照形式] )

順番が前後しますが、、INDIRECT関数は、

引数で指定した「参照文字列」を基に別表のセルの内容を検索する。
「参照文字列」で指定したセルを直接表示できる。

そういった関数です。
 

表に付けた「名前」を消すには?

先程、参照先にする表をドラッグして「名前」を付けましたが、
この「名前」の削除方法・手順は以下の通りです。

[数式タブ][名前の管理][削除]

以下の画像をご参照ください。
 

Excel_VLOOKUP_参照先を自動で切換える_5
Excel_VLOOKUP_参照先を自動で切換える_6

 
いかがでしたでしょうか?
何か業務のお役に立てれば幸いです。

広告