行全体の検索と取得
特定の値に一致するデータの行全体を検索・取得するには、INDEX 関数とMATCH 関数を組み合わせて、配列数式を作成できます。

特定の値に基づいて行全体を検索・取得
特定の値に基づいて行全体を合計
特定の値に基づいて行全体をさらに分析
特定の値に基づいて行全体を検索・取得
Jimmy が達成した売上リストを上記の表から取得するには、まず MATCH 関数で Jimmy の売上がある位置を特定し、その結果を INDEX 関数に渡して該当位置の値を取得します。
一般的な構文
=INDEX()return_range,MATCH()lookup_value,lookup_array,0),0)
√ 注:これは配列数式であり、Ctrl+Shift+Enterで入力する必要があります。
- return_range:返したい行全体を含む範囲です。ここでは売上データの範囲を指します。
- lookup_value:組み合わせ関数が、対応する売上情報を検索する際に使用する値です。ここでは、指定された営業担当者を指します。
- lookup_array:lookup_valueと照合するセル範囲です。ここでは名前のリストを指します。
- match_type 0:MATCH 関数が、lookup_valueと完全に一致する最初の値を検索するよう強制します。
Jimmy が達成した売上リストを取得するには、以下の数式をセル I6 にコピーまたは入力し、Ctrl+Shift+Enterを押した後、セルをダブルクリックしてF9を押して結果を表示させてください:
=INDEX()C5:F11,MATCH()「Jimmy」,B5:B11,0),0)
あるいは、数式を動的にするにはセル参照を使用します:
=INDEX()C5:F11,MATCH()I5,B5:B11,0),0)

数式の説明
=INDEX()C5:F11,MATCH(I5,B5:B11,0),0)
- MATCH(I5,B5:B11,0):match_type 0により、MATCH 関数はJimmy(I5セルの値)をB5:B11の範囲内で検索し、その位置を返します。結果は7です。なぜなら、Jimmyはこの範囲の7 番目の位置にあるからです。
- INDEX()C5:F11,MATCH(I5,B5:B11,0),0) = INDEX(C5:F11INDEX 関数は、7 行目のC5:F11 範囲内のすべての値を、次のような配列で返します:{6678,3654,3278,8398}。なお、Excel でこの配列を表示させるには、数式を入力したセルをダブルクリックしてからF9キーを押してください。
特定の値に基づいて行全体を合計
Jimmy が達成した年間売上高を取得するには、Jimmy の売上情報をすべて取得した上で、リスト内の売上値を合計するために数式に SUM 関数を追加します。
一般的な構文
=SUM(INDEX())return_range,MATCH()lookup_value,lookup_array,0),0))
この例では、Jimmy が達成した年間売上高を取得するには、以下の数式をセル I7 にコピーまたは入力し、Enterを押して結果を取得してください:
=SUM(INDEX())C5:F11,MATCH()I5,B5:B11,0),0))

数式の説明
=SUM()INDEX()C5:F11,MATCH(I5,B5:B11,0),0))
- MATCH(I5,B5:B11,0):match_type 0により、MATCH 関数はJimmy(I5セルの値)をB5:B11の範囲内で検索し、その位置を返します。結果は7です。なぜなら、Jimmyはこの範囲の7 番目の位置にあるからです。
- INDEX()C5:F11,MATCH(I5,B5:B11,0),0)=C5:F117:INDEX 関数は、7 行目のC5:F11 範囲内のすべての値を、次のような配列で返します:{6678,3654,3278,8398}。なお、Excel でこの配列を表示させるには、数式を入力したセルをダブルクリックしてからF9キーを押してください。
- SUM()INDEX()C5:F11,MATCH(I5,B5:B11,0)),0) = SUM({6678,3654,3278,8398}):SUM 関数は配列内のすべての値を合計し、Jimmy の年間売上高として$22,008を算出します。
特定の値に基づいて行全体をさらに分析
Jimmy の売上に対してさらに処理を行うには、数式に SUM、AVERAGE、MAX、MIN、LARGE などの他の関数を簡単に追加できます。
たとえば、各四半期におけるジミーの売上平均を取得するには各四半期ごとのジミーの売上平均、次の数式を使用できます。
=AVERAGE(INDEX())C5:F11,MATCH()I5,B5:B11,0),0))
ジミーが達成した最低売上を調べるには、以下のいずれかの数式を使用してください。
=MIN(INDEX())C5:F11,MATCH()I5,B5:B11,0),0))
または
=SMALL(INDEX())C5:F11,MATCH()I5,B5:B11,0),0),1)
関連する関数
Excel の INDEX 関数は、指定された範囲または配列から、指定した位置に基づいて値を返します。
Excel MATCH 関数は、セル範囲内で特定の値を検索し、その値の相対的な位置を返します。
関連する数式
特定の値と一致する列全体を検索・取得するには、INDEX 関数と「数式を区別する」機能を組み合わせると便利です。
Excel で特定の商品、映画、人物などの情報を素早く見つけたいなら、INDEX 関数と MATCH 関数を組み合わせるのがおすすめです。
従業員のパフォーマンス評価、学生の得点の評価、重量に基づく郵送料金の計算など、Excel で近似一致が求められるシーンはさまざまです。このチュートリアルでは、正確な結果を得るために INDEX 関数と MATCH 関数を組み合わせて使う方法をわかりやすく解説します。
Excel では、検索値の範囲を指定する際に INDEX 関数と MATCH 関数を組み合わせるか、VLOOKUP 関数を使うことができることをご存じかもしれません。ただし、これらの検索は大文字と小文字を区別しません。大文字小文字を厳密に区別して一致させるには、EXACT 関数と CHOOSE 関数を活用する必要があります。
最高の Office 生産性ツール
Kutools for Excel - あなたを群衆の中から際立たせます
| 🤖 | KUTOOLS AI アシスト:次に基づいてデータ分析を革新します:インテリジェント実行 | コード生成| カスタム数式作成 | データ分析とチャート生成| 拡張機能呼び出し… |
| 人気機能:検索・ハイライト・重複をマーキング | 空白行を削除する | データを失うことなく列の結合またはセルを | 数式を使用しない四捨五入... | |
| スーパー VLookup:複数条件 | 複数値 | 複数シート間 | ファジーマッチ... | |
| 高度なドロップダウンリスト:簡単なドロップダウンリスト | 連動型ドロップダウンリスト | 複数選択可能なドロップダウンリスト... | |
| 列マネージャー:指定した数の列を追加 | 列の移動 | 非表示列の表示状態を切り替え |列を比較して同じ/異なるセルを選択... | |
| 注目の機能:グリッドフォーカス | デザインビュー | 強化された数式バー | ワークブックとシートマネージャー|リソースライブラリ(オートテキスト)| 日付ピッカー | ワークシートの統合 | 暗号化/セルの復号化 | リストからメール送信 | スーパーフィルター | 特殊フィルタ(太字のフォントを持つセルをフィルタリング/イタリック/取り消し線。。。) 。。。 | |
| トップ15 ツールセット:12 テキストツール(テキストの追加、特定の文字を削除...)| 50+チャートタイプ(ガントチャート...)| 40+実用的な数式(誕生日に基づいて年齢を計算します...)| 19 挿入ツール(QR コードを挿入、パスから画像を挿入...)| 12 変換ツール(単語に変換する、為替レートの変換...)| 7 結合と分割ツール(高度な行のマージ、Excel セルを分割...)|。。。他にも多数 |
Kutools for Excel は300 以上の機能を備えており、必要な機能が常にワンクリックで利用できます…
Office Tab - Microsoft Office(Excel を含む)でタブを使った閲覧・編集を可能にします
- 数十もの開いているドキュメントを1 秒で切り替えられます!
- 毎日何百回ものマウスクリックを削減して、マウス手の悩みともさよならしましょう。
- 複数のドキュメントを閲覧・編集する際の生産性が50%も向上します。
- Office(Excel を含む)に、Chrome、Edge、Firefox のような効率的なタブ機能をもたらします。