FILTER関数を使用した複数結果のルックアップ
メニューを表示するにはスワイプしてください
複数結果の検索が必要な理由
従来の検索関数である VLOOKUP、XLOOKUP、または INDEX と XMATCH は、単一の結果のみを返します。
しかし、実際の業務では複数の一致するレコードを取得する必要がある場合が多くあります。
例:
- 特定の顧客が行ったすべての注文;
- 部署内のすべての従業員;
- 一定金額を超えるすべての取引。
このような場合、単一値の検索では不十分です。 最新のExcelでは、複数の結果を一度に返す動的配列関数が利用できます。
FILTER関数
FILTER 関数は、指定した条件を満たすデータセットの行を抽出します。
FILTER は単一の値ではなく、条件に一致するすべての行を返します。
基本構文
=FILTER(array; include; [if_empty])
array: データを含む範囲;include: 返す行を決定する条件;if_empty: 一致する結果がない場合に表示される省略可能な値。
顧客名はセル F2 に入力。
目的は、その顧客が行ったすべての注文を返すこと。
=FILTER(A2:D7; B2:B7=F2)
- Excel は条件
B2:B7=F2を評価。この条件で選択された顧客と一致する行を判定; FILTER関数は条件がTRUEとなるすべての行を抽出;- 結果は自動的に複数行に展開。
F2 に Alice が入力されている場合、Excel は次のように返す:
動的配列の挙動
結果は自動的に隣接するセルに展開されます。 これをスピル範囲と呼びます。 データセットが増加したり入力値が変更された場合、結果も自動的に更新されます。
タスク
シナリオ
ワークシートには Employee ID、Employee Name、Department、Salary のテーブルがあります。
入力セルに部門名が入力されています。
目標は、その部門で働くすべての従業員を返すことです。
タスク手順
FILTER関数を使用して一致する行を抽出する;- 選択された部門に所属するすべての従業員を返す;
- 部門が変更されたときに結果が自動的に更新されることを確認する。
すべて明確でしたか?
フィードバックありがとうございます!
セクション 1. 章 13
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 1. 章 13