EXCEL・INDEX・MATCH関数でVLOOKUPを代替する方法・複数条件設定も!

スポンサーリンク
080-お仕事

EXCEL関数を全く覚えられないボンクラアラフィフオヤジの管理人です。

先日の【MATCH】関数に引き続き・・・

今回は【INDEX】関数と組み合わせて【VLOOKUP】関数を代替する方法を試してみました。

まずは【MATCH】関数で行番号を取得する

【INDEX】関数は、配列から行番号と列番号を指定して、該当する値を表示させる関数です。

式の入力は次のとおりです。

=INDEX(配列,行番号,列番号)

上の図では、まずC列に【MATCH】関数を使って【K:L】の配列から、B列をキーとして行番を取得しています。

2行目の例では・・・

=MATCH(B2,$K$2:$K$6,0)

として、【K:L】の配列から行番をC列に取得しています。

スポンサーリンク

【INDEX】関数で目的の値を取得する

次に【INDEX】関数で目的の値を取得します。

【VLOOKUP】を使うなら次の様になります。(2行目の例)

=VLOOKUP(B2,$K$1:$L$6,2,false)

個人的には・・・【VLOOKUP】で十分だと思うのですが・・・

なぜかYoutube界隈では【VLOOKUP】を使うよりも【INDEX】と【MATCH】関数を使えみたいな風潮があるので、管理人もそれに乗ることにします。

上の列のE列には【INDEX】と【MATCH】を使って目的の値を取得しています。

式は、一部省略していますが・・・次のとおりです。(2行目の例)

=INDEX($K$2:$L$6,C2,2)

これを省略しない形にすると・・・(C2セルに入力されている式を置き換える)

=INDEX($K$2:$L$6,MATCH(B2,$K$2:$K$6,0),2)

複数条件を指定できる

【VLOOKUP】では、できませんが・・・

【MATCH】関数では複数の条件を設定できます。

スポンサーリンク

上の図の例では、A列とB列をキーとして【N:P】配列から合致する行を抽出しています。

【MATCH】を使った複数条件の式は次のとおりです。(2行目の例)

{=MATCH(A2&B2,$P$2:$P$15&$N$2:$N$15,0)}

ブログランキングにご協力ください!
ブログランキング・にほんブログ村へ

但し、式を入力する場合は【Ctrl+Shift+Enter】で確定させる必要があるので注意です。

式の詳細ですが・・・

{=MATCH(条件1 & 条件2 , 条件1の配列 & 条件2の配列 ,0)}

となります。

各条件の配列の指定順は合わせる必要があります。

複数条件を指定して【INDEX】関数で目的の値を取得するには次のとおりとなります。(2行目の例)

{=INDEX($N$2:$P$15,MATCH(A2&B2,$P$2:$P$15&$N$2:$N$15,0),2)}

【VLOOKUP】では、配列の一番左側にキーを持ってくる必要があったり・・・

複数条件を指定できなかったりするので、こういう点では・・・

【INDEX】と【MATCH】は便利ですね。

すぐに使い方を忘れそうなので、忘備録として掲載しておきます。

ブログ開設に必要なドメイン取得、サーバーレンタル、ASPの登録等は、こちらのサイトから!

コメント

タイトルとURLをコピーしました