この記事では、Microsoft Excel2010で同じ基準から複数の値を取得する方法を学習します。

テーブル内の1つの一意のキーで値を簡単に検索できます。 VLOOKUPを使用するだけです。ただし、データにその一意の列がなく、値と一致するように複数の列を検索する必要がある場合、VLOOKUPは役に立ちません。

したがって、複数の基準を持つテーブルの値を検索するには、INDEX-MATCH-INDEX式を使用します。

image

複数基準ルックアップの一般式

=INDEX(lookup_range,MATCH(1,INDEX((criteria1

=range1)(criteria2=range2)(criteriaN=rangeN),0,1),0))

_lookup_range:_値を取得する範囲。

_Criteria1、Criteria2、Criteria N:_これらは、range1、range2、およびRangeNで一致させる基準です。最大270の基準(範囲ペア)を持つことができます。

_Range1、range2、rangeN:_これらは、それぞれの基準に一致する範囲です。

それはどのように機能しますか?見てみましょう…=====複数の基準を持つINDEXとMATCHの例ここにデータテーブルがあります。予約日、ビルダー、エリアを使用して顧客の名前を取得したい。したがって、ここには3つの基準と1つのルックアップ範囲があります。

image

この数式をセルI4に入力してEnterキーを押します。

=INDEX(E2:E16,MATCH(1,INDEXI1=A2:A16)(I2=B2:B16)(I3=C2:C16),0,1),0

image

仕組み:

INDEX and MATCH functionがEXCELでどのように機能するかはすでにわかっているので、ここでは説明しません。ここで使用したトリックについて説明します。

(I1 = A2:A16)(I2 = B2:B16)(I3 = C2:C16):主要部分はこれです。このステートメントの各部分は、truefalseの配列を返します。

ブール値を乗算すると、0と1の配列が返されます。

乗算はAND演算子として機能します。すべての値がtrueの場合にのみ、1を返します。それ以外の場合は0(I1 = A2:A16)(I2 = B2:B16)(I3 = C2:C16)これはすべて[width = “100%”、cols = “100を返します。 % “、]

\{FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}*

\{FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;TRUE}*

\{FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}

これは

\{0;0;0;0;0;0;0;1;0;0;0;0;0;0;0}

に変換されますINDEX((I1 = A2:A16)(I2 = B2:B16)(I3 = C2:C16)、0,1):INDEX関数は同じ配列を返します(\ {0; 0; 0; 0; 0; 0 ; 0; 1; 0; 0; 0; 0; 0; 0; 0})ルックアップ配列としてMATCH関数に。

MATCH(1、INDEX((I1 = A2:A16)(I2 = B2:B16)(I3 = C2:C16)、0,1):MATCH関数は配列\ {0; 0; 0; 0で1を検索します; 0; 0; 0; 1; 0; 0; 0; 0; 0; 0; 0}。そして、配列で見つかった最初の1のインデックス番号を返します。ここでは8です。

INDEX(E2: E16、MATCH(1、INDEX((I1 = A2:A16)(I2 = B2:B16)(I3 = C2:C16)、0,1)、0)):

最後に、INDEXは値を返します見つかったインデックス(8)で指定された範囲(E2:E16)から

単純ですか?。申し訳ありませんが、これ以上単純にすることはできません。

配列ソリューションCTRLキーを押すことができれば+ SHIFT + ENTERの結果、内側のINDEX関数を削除できます。この式を記述してCTRL + SHIFTENTERを押すだけです。

=INDEX(E2:E16,MATCH(1,(I1=A2:A16)(I2=B2:B16)(I3=C2:C16),0))

複数基準ルックアップの汎用配列式

=INDEX(lookup_range,MATCH(1,(criteria1

=range1)(criteria2=range2)(criteriaN=rangeN),0))

式は同じように機能します上記の説明のように。

Microsoft Excel 2010で同じ基準から複数の値を取得する方法に関するこの記事が説明的であることを願っています。値の抽出と関連するExcel式に関するその他の記事をここで見つけてください。ブログが気に入った場合は、ブログと共有してください。 Facebookの友達。また、TwitterやFacebookでフォローすることもできます。皆様からのご意見をお待ちしております。私たちの仕事を改善、補完、革新し、より良いものにする方法をお知らせください。 [email protected]までご連絡ください。

関連記事:

link:/ lookup-formulas-use-vlookup-from-two-or-more-lookup-tables [2つ以上のルックアップテーブルからのVLOOKUPを使用する] |複数のテーブルからルックアップするには、IFERRORアプローチを採用できます。複数のテーブルからルックアップするには、エラーを次のテーブルのスイッチとして受け取ります。別の方法は、Ifアプローチです。

link:/ lookup-formulas-how-to-do-case-sensitive-lookup-in-excel [Excelで大文字と小文字を区別するルックアップを行う方法] | ExcelのVLOOKUP関数は大文字と小文字を区別せず、リストから最初に一致した値を返します。 INDEX-MATCHも例外ではありませんが、大文字と小文字を区別するように変更できます。方法を見てみましょう… link:/ lookup-formulas-lookup-frequently-appearing-text-with-criteria-in-excel [Lookup Frequently Appearing Text with Criteria in Excel] |ルックアップは、MODE関数でINDEX-MATCHを使用する範囲のテキストで最も頻繁に表示されます。これが方法です。

人気のある記事:

link:/ Tips-if-condition-in-excel [ExcelでIF関数を使用する方法]:ExcelのIFステートメントは、条件をチェックし、条件がTRUEの場合は特定の値を返し、FALSEの場合は別の特定の値を返します。 。

link:/ forms-and-functions-introduction-of-vlookup-function [ExcelでVLOOKUP関数を使用する方法]:これは、さまざまな範囲から値を検索するために使用される、Excelで最も使用され人気のある関数の1つです。とシート。

link:/ excel-formula-and-function-excel-sumif-function [ExcelでSUMIF関数を使用する方法]:これはもう1つのダッシュボードの必須関数です。これは、特定の条件で値を合計するのに役立ちます。

link:/ Tips-countif-in-microsoft-excel [ExcelでCOUNTIF関数を使用する方法]:この驚くべき関数を使用して条件付きの値をカウントします。特定の値をカウントするためにデータをフィルタリングする必要はありません。ダッシュボードを準備するには、Countif関数が不可欠です。