ExcelでVLOOKUPの代わりにインデックス一致を使用する場合

Excelに精通している方は、 VLOOKUP関数に精通している可能性があります。VLOOKUP関数は、同じ行内の一致するテキストに基づいて、別のセルの値を検索するために使用されます。

まだVLOOKUP関数を初めて使用する場合は、ExcelでVLOOKUPを使用する方法(how to use VLOOKUP in Excel)に関する以前の投稿を確認してください。

VLOOKUPは強力ですが、数式が機能するために一致する参照テーブルを構造化する方法に制限があります。

この記事では、VLOOKUPを使用できない場合の制限と、この問題を解決できるINDEX-MATCHと呼ばれるExcelの別の関数を紹介します。(Excel)

INDEXMATCHExcelの例

次のExcelスプレッドシートの例を使用すると、車の所有者の名前と車の名前のリストがあります。この例では、 以下に示すように、複数の所有者の下にリストされている車種(Car Model)に基づいて車IDを取得しようとします。(Car ID)

CarTypeと呼ばれる別のシートに、 IDCar ModelColorを含む単純な自動車データベースがあり ます。

このテーブル設定では、  VLOOKUP関数は、取得するデータが照合しようとしているものの右側の列([車種(Car Model )]フィールド)にある場合にのみ機能します。

つまり、このテーブル構造では、車種(Car Model)に基づいて照合しようとしているため、取得できる情報は色のみです( (Color )ID列は(ID)車種(Car Model )列 の左側にあるため IDではありません)。

これは、VLOOKUPでは、ルックアップ値が最初の列に表示され、ルックアップ列が右側にある必要があるためです。この例では、これらの条件はいずれも満たされていません。

幸いなことに、INDEX-MATCH はこれを達成するのに役立ちます。実際には、これは実際には、個別に機能する2つのExcel関数( (Excel)INDEX関数とMATCH関数)を組み合わせたものです。

ただし、この記事では、 VLOOKUP(VLOOKUP)の機能を再現することを目的とした2つの組み合わせについてのみ説明します。

数式は最初は少し長くて威圧的に見えるかもしれません。ただし、何度か使用すると、構文を暗記することができます。

これは、この例の完全な式です。

=INDEX(CarType!$A$2:$A$5,MATCH(B4,CarType!$B$2:$B$5,0))

各セクションの内訳は次のとおりです

=INDEX(“=”はセル内の数式の先頭を示し、INDEXは使用している(INDEX)Excel関数の最初の部分です。

CarType!$A$2:$A$5 – 取得するデータが含まれているシートCarTypeの列。(CarType)この例では 、各車種の(Car Model.)IDです。(ID)

MATCH( –使用しているExcel関数の2番目の部分。

B4 –使用している検索テキストを含むセル(車種(Car Model)

CarType!$B$2:$B$5 –  検索テキストとの照合に使用するデータを含むシートCarTypeの列。(CarType)

0)) –検索テキストが一致する列のテキストと完全に一致する必要があることを示します(つまり、 CarType!$B$2:$B$5)。完全に一致するものが見つからない場合、数式は#N/Aを返します。

注:この関数「))」の最後にある二重閉じ括弧と、引数の間のコンマを覚えておいてください。(Note: remember the double closing bracket at the end of this function “))” and the commas between the arguments.)

個人的には、 VLOOKUP(VLOOKUP)から離れて、VLOOKUP以上のことができるため、INDEX-MATCHを使用しています。

INDEX-MATCH関数には、 VLOOKUPと比較して他の利点もあります。

  1. より高速な計算(Faster Calculations)

多くのVLOOKUP(VLOOKUP)関数が原因で計算自体に長い時間がかかる可能性がある大規模なデータセットで作業している場合、これらの数式をすべてINDEX-MATCHに置き換えると、全体的な計算がより高速になります。

  1. 相対列を数える必要はありません(No Need to Count Relative Columns)

参照テーブルに検索するキーテキストが列Cにあり、取得する必要のあるデータが列AQにある場合、 ( AQ)VLOOKUPを使用するときに、列Cと列AQの間にある列の数を知る/カウントする必要があります。。

INDEX-MATCH関数を使用 すると、データを取得する必要があるインデックス列(つまり列AQ)を直接選択し、照合する列(つまり列C)を選択できます。

  1. それはより複雑に見えます(It Looks More Complicated)

VLOOKUPは最近非常に一般的ですが、INDEX-MATCH関数を一緒に使用することを知っている人は多くありません。

INDEX-MATCH関数の長い文字列は、複雑で高度なExcel関数を処理する専門家のように見せるために役立ちます。楽しみ!



About the author

私は 10 年以上の経験を持つコンピューターの専門家です。余暇には、オフィスのデスクを手伝ったり、子供たちにインターネットの使い方を教えたりしています。私のスキルには多くのことが含まれますが、最も重要なことは、人々が問題を解決するのを助ける方法を知っていることです. 何か緊急のことを手伝ってくれる人が必要な場合や、基本的なヒントが必要な場合は、私に連絡してください!



Related posts