複数条件による検索手法
メニューを表示するにはスワイプしてください
なぜ複数条件の検索が必要か
多くの実際のシナリオでは、1つの条件だけでは正しい結果を取得できません。 例えば、次のような場合があります:
- 特定の地域の特定の顧客からの注文;
- 特定の部門に所属し、一定額以上の給与を持つ従業員;
- 特定のカテゴリに属し、価格条件を満たす製品。
これらの状況では複数の条件が必要です。
FILTER関数は、数式内で論理条件を組み合わせることでこれに対応できます。
FILTER関数で複数条件を使用する方法
各条件はTRUEまたはFALSEの結果を生成します。
複数の条件すべてを満たす必要がある場合、論理テストを掛け合わせて組み合わせることができます。
これはAND条件として機能します。
顧客と地域で注文を返す例
ワークシートに次のテーブルが含まれていると仮定します。
顧客名は G2 に入力。
地域は H2 に入力。
両方の条件に一致するすべての注文を返すことが目的。
2つの条件による FILTER 関数
=FILTER(A2:E6; (B2:B6=G2)*(C2:C6=H2))
- 最初の条件
B2:B6=G2は、選択された顧客に一致する行を判定。 - 2つ目の条件
C2:C6=H2は、選択された地域に一致する行を判定。 - 2つの条件は掛け算で組み合わせる
(B2:B6=G2)*(C2:C6=H2)。両方の条件が TRUE の行のみ返される。
if_empty 引数の追加
両方の条件に一致する行がない場合、FILTER はエラーを返します。
より分かりやすいメッセージを表示するには、3 番目の引数を追加します:
=FILTER(A2:E6; (B2:B6=G2)*(C2:C6=H2); "No Results")
一致するレコードが存在しない場合、No Results が表示されます。
複数条件による検索の実践的活用
この手法が有効な場面:
- 1つの検索値だけでは特定できない場合
- 複数のフィールドでレコードを絞り込む必要がある場合
- 複数の入力が必要な動的レポート作成時
従来の複雑な配列数式に代わる、最も強力な現代的手法の一つ。
シナリオ
ワークシートに Employee ID, Employee Name, Department, Location, Salary を含む従業員テーブルがある。1つの入力セルに Department を、別の入力セルに Location を入力する。
目標は、両方の条件に一致するすべての従業員を返すこと。
手順
- 2つの条件で
FILTERを使用 - 一致するすべての行を返す
- 両方の条件に一致する従業員がいない場合は
No Resultsを表示
すべて明確でしたか?
フィードバックありがとうございます!
セクション 5. 章 3
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 5. 章 3