Excel: 一致する値の 2 番目のインスタンスを見つける方法
次の数式を使用すると、Excel で一致する値の 2 番目のインスタンスを返すことができます。
=INDEX( B1:B11 ,SMALL(IF( A1:A11 = F1 ,ROW( A1:A11 )-MIN(ROW( A1:A11 ))+1),2))
この特定の数式は、範囲A1:A11内のセルF1の値を検索し、範囲B1:B11内の一致する値の 2 番目のインスタンスに一致する値を返します。
注: 一致する値のn 番目のインスタンスを見つけるには、式の最後の2 をnに置き換えるだけです。
次の例は、この公式を実際に使用する方法を示しています。
例: Excel で一致する値の 2 番目のインスタンスを検索する
さまざまなバスケットボール選手に関する情報を含む次のデータセットが Excel にあるとします。
チーム列の「Mavs」の 2 番目のインスタンスに対応するポイント列の値を返したいとします。
これを行うには、セルF2に次の数式を入力します。
=INDEX( B1:B11 ,SMALL(IF( A1:A11 = F1 ,ROW( A1:A11 )-MIN(ROW( A1:A11 ))+1),2))
次のスクリーンショットは、この式を実際に使用する方法を示しています。
この式は値24を返します。これは、チーム列の「Mavs」の 2 番目のインスタンスに対応するポイント列の値です。
代わりに、Assists 列の値を返したい場合は、セル範囲B1:B11をC1:C11に変更できます。
=INDEX( C1:C11 ,SMALL(IF( A1:A11 = F1 ,ROW( A1:A11 )-MIN(ROW( A1:A11 ))+1),2))
次のスクリーンショットは、この式を実際に使用する方法を示しています。
この式は値7を返します。これは、チーム列の「Mavs」の 2 番目のインスタンスに対応するアシスト列の値です。
注: 探している値に 2 番目のインスタンスが存在しない場合、数式は#NUM!を返します。したがって。
追加リソース
次のチュートリアルでは、Excel で他の一般的なタスクを実行する方法について説明します。
Excel: 2 つの列間の一致の数を数える
Excel: 条件に一致するすべての値を見つける方法
Excel: 2 つのワークシートで一致する値を見つける方法