Excel で双方向検索を行うにはどうすればよいですか?
これは、行ヘッダーと列ヘッダーに基づいてテーブル内の値を検索する必要がある場合に発生することがあります。
特定の月とゾーンについて上の表から値を取得する必要があるとします。この状況では、双方向検索を使用できます。
双方向検索の実行には、2 次元テーブルから値を取得することが含まれます。これは、テーブル内の任意のセルから値を取得できることを意味します。
そのためには、 match 関数と VLOOKUP を組み合わせる必要があります。
ご存知のとおり、通常の VLOOKUP は、一度に 1 つの列を調べてのみ値を返すことができます。
その理由は、VLOOKUP のcol_index 引数が静的な値であるためです。ただし、match 関数と VLOOKUP を組み合わせれば、動的にすることができます。
VLOOKUP + MATCH を使用して双方向検索を行う方法
例に戻りましょう。会社の 4 つの異なる分野の月次販売数量を示す表があります。
ここで、上司が特定の月のゾーンの数量を確認したいとします (例: 9 月と北部ゾーン)。そして、彼はそのために表を見るのが好きではありません。式は次のとおりです。
=VLOOKUP(month,table,MATCH(zone,heading_row,0),0)
使い方
前に述べたように、col_index を動的にするためには match 関数が必要です。この式は 2 つの部分で機能します。フィールドを選択すると、match 関数はヘッダー行内のフィールドの位置を返します。
そして、VLOOKUP はこの位置を使用してこの列の値を取得します。
月とゾーンを選択するたびに、行と列の交点にある値が返されます。重要なのは、VLOOKUPを使用してさまざまな列から値を取得できる動的なcol_indexがあるということです。