Excel: index matchを使用して複数の値を水平に返す
Excel でINDEX関数とMATCH関数を使用すると、ある列で値を検索し、別の列で対応する値を返すことができます。
INDEXとMATCHを使用して複数の値を水平に返したい場合は、次の式を使用できます。
=INDEX( $B$2:$B$13 , SMALL(IF( $A$17 = $A$2:$A$13 ,ROW( $A$2:$A$13 )-ROW( $B$2 )+1), COLUMN( A1 )))
この特定の数式は、範囲A2:A13内のセルA17の値を検索し、範囲B2:B13内の対応する値を返します。
この数式を水平方向にドラッグすると、複数の値が表示されます。
次の例は、この公式を実際に使用する方法を示しています。
例: INDEX MATCH を使用して水平方向に複数の値を返す
さまざまなチームのバスケットボール選手が獲得したポイントに関する情報を含む次のデータセットが Excel にあるとします。
チーム列で「Mavs」を検索し、各ポイント値を水平方向に返したいとします。
これを行うには、セルB17に次の数式を入力します。
=INDEX( $B$2:$B$13 , SMALL(IF( $A$17 = $A$2:$A$13 ,ROW( $A$2:$A$13 )-ROW( $B$2 )+1), COLUMN( A1 )))
次のスクリーンショットは、この式を実際に使用する方法を示しています。
次に、 #NUM と表示されるセルが見つかるまで、この数式をクリックして右に水平にドラッグします。チーム列の「マブス」に対応する各ポイント値を表示するには:
数式は、同じ行に値 24、40、15、25 を正しく返します。
これらの各値は、チーム列の「マブス」に対応するポイント列の値を表すことに注意してください。
別のチームのポイント値を見つけるには、セルA17のチーム名を自由に編集してください。
追加リソース
次のチュートリアルでは、Excel で他の一般的なタスクを実行する方法について説明します。
Excel: INDEX MATCH で IF 関数を使用する方法
Excel: INDEX MATCH で SUM を使用する方法
Excel: INDEX と MATCH を使用して複数の値を垂直に返す