🔍 Step 29: 複数条件でのフィルタリング
AND条件・OR条件を使った高度な絞り込みをマスター!
📋 このステップで学ぶこと
- AND条件とOR条件の違い
- 複数列のフィルターを組み合わせる方法
- 詳細フィルター(高度なフィルター)
- OR条件での抽出方法
- ワイルドカード検索
- 実務での活用例
🎯 1. AND条件とOR条件の違い
🔑 2つの条件の違い
AND条件: すべての条件を満たすデータだけを表示(厳しい絞り込み)
OR条件: いずれかの条件を満たすデータを表示(緩い絞り込み)
AND条件: すべての条件を満たすデータだけを表示(厳しい絞り込み)
OR条件: いずれかの条件を満たすデータを表示(緩い絞り込み)
📊 AND条件 vs OR条件
元のデータ
| 名前 | 部署 | 売上高 |
| 田中 | 営業 | 1500 |
| 佐藤 | 開発 | 1200 |
| 鈴木 | 営業 | 2000 |
| 伊藤 | 開発 | 1800 |
AND条件(両方満たす)
条件:
部署 = 営業 かつ
売上高 ≥ 1500
売上高 ≥ 1500
| 名前 | 部署 | 売上高 |
| 田中 | 営業 | 1500 |
| 鈴木 | 営業 | 2000 |
✓ 結果: 2件(両方の条件を満たす)
OR条件(どちらか満たす)
条件:
部署 = 営業 または
売上高 ≥ 1800
売上高 ≥ 1800
| 名前 | 部署 | 売上高 |
| 田中 | 営業 | 1500 |
| 鈴木 | 営業 | 2000 |
| 伊藤 | 開発 | 1800 |
✓ 結果: 3件(どちらかを満たす)
💡 日常生活での例
AND条件: 「身長180cm以上」かつ「体重70kg以下」→ 両方満たす必要がある
OR条件: 「英語ができる」または「中国語ができる」→ どちらかできればOK
AND条件: 「身長180cm以上」かつ「体重70kg以下」→ 両方満たす必要がある
OR条件: 「英語ができる」または「中国語ができる」→ どちらかできればOK
📝 2. AND条件の設定方法(複数列のフィルター)
通常のフィルター機能では、複数列にフィルターをかけると自動的にAND条件になります。
📋 AND条件の設定手順(※横スクロールできます)
【AND条件の設定手順】
1. データタブ → フィルター(Ctrl + Shift + L)
2. 1つ目の列でフィルター条件を設定
3. 2つ目の列でフィルター条件を設定
4. 両方の条件を満たすデータだけが表示される
例: 「営業部門」かつ「売上1500以上」
📊 AND条件の実例
ステップ1: 部署でフィルター
部署列の▼ → 「営業」を選択
→ 営業部門のデータが表示される(田中、鈴木、山田)
→ 営業部門のデータが表示される(田中、鈴木、山田)
⬇ さらに
ステップ2: 売上高でフィルター
売上高列の▼ → 数値フィルター → 指定の値以上
→ 「1500」と入力
→ 営業部門で売上1500以上の人だけ表示
→ 「1500」と入力
→ 営業部門で売上1500以上の人だけ表示
結果(AND条件)
| 名前 | 部署 | 売上高 |
| 鈴木 | 営業 | 2000 |
| 山田 | 営業 | 1800 |
✓ 「営業」AND「1500以上」の両方を満たすデータ
📝 3. 詳細フィルター(高度なフィルター)
OR条件や複雑な条件を設定するには、詳細フィルターを使います。
📋 詳細フィルターの設定手順(※横スクロールできます)
【詳細フィルターの設定手順】
1. データの横に条件範囲を作成
2. データタブ → 詳細設定(または並べ替えとフィルター → 詳細設定)
3. リスト範囲: データ範囲を選択
4. 検索条件範囲: 条件範囲を選択
5. OK
📊 詳細フィルターの条件範囲の作り方
AND条件(同じ行に書く)
| 部署 | 売上高 |
| 営業 | >=1500 |
💡 同じ行 = AND条件(「営業」かつ「1500以上」)
OR条件(別の行に書く)
| 部署 | 売上高 |
| 営業 | |
| >=1800 |
💡 別の行 = OR条件(「営業」または「1800以上」)
複合条件(AND と OR の組み合わせ)
| 部署 | 売上高 |
| 営業 | >=1500 |
| 開発 | >=1800 |
💡 (営業 AND 1500以上)OR(開発 AND 1800以上)
🎯 条件範囲のルール
- 同じ行に書いた条件 = AND条件(すべて満たす)
- 別の行に書いた条件 = OR条件(いずれか満たす)
- ヘッダーは元データと同じ名前にする
📝 4. 実務での活用例
📊 例1: 特定部門の高売上者を抽出(※横スクロールできます)
【例1: 特定部門の高売上者を抽出】
目的: 営業部門で売上2000以上の社員を表示
条件範囲:
A列 B列
1 部署 売上高
2 営業 >=2000
→ AND条件(同じ行)
📊 例2: 複数部門または高売上者を抽出(※横スクロールできます)
【例2: 複数部門または高売上者を抽出】
目的: 営業部門または売上1800以上の社員を表示
条件範囲:
A列 B列
1 部署 売上高
2 営業
3 >=1800
→ OR条件(別の行)
📊 例3: エリア別の条件(※横スクロールできます)
【例3: エリア別の条件】
目的: 東京で売上1500以上、または大阪で売上1800以上
条件範囲:
A列 B列
1 エリア 売上高
2 東京 >=1500
3 大阪 >=1800
→ (東京 AND 1500以上)OR(大阪 AND 1800以上)
📊 実務での活用シーン
📈 営業管理
「今月の目標未達成者」または「先月より売上減少者」を抽出
→ フォローアップ対象を特定
→ フォローアップ対象を特定
📦 在庫管理
「在庫数が10以下」かつ「出荷頻度が高い商品」
→ 発注優先度の高い商品を特定
→ 発注優先度の高い商品を特定
👥 顧客管理
「購入金額が10万円以上」または「購入回数が5回以上」
→ VIP顧客を抽出
→ VIP顧客を抽出
📅 タスク管理
「期限が今週」かつ「未完了」または「優先度が高」
→ 今週の重要タスクを表示
→ 今週の重要タスクを表示
📝 5. ワイルドカード検索
フィルター条件でワイルドカードを使うと、あいまい検索ができます。
📋 ワイルドカードの種類(※横スクロールできます)
【ワイルドカードの種類】
* : 任意の文字列(0文字以上)
? : 任意の1文字
例:
田* → 「田」で始まる(田中、田村、田辺など)
*田 → 「田」で終わる(山田、吉田など)
*田* → 「田」を含む(山田、田中など)
田?? → 「田」+任意の2文字(田中、田村など)
📊 ワイルドカードの使用例
| パターン | 意味 | マッチする例 |
| 東京* | 東京で始まる | 東京都、東京支店 |
| *店 | 店で終わる | 渋谷店、新宿店 |
| *営業* | 営業を含む | 営業部、営業課、第一営業 |
| 田? | 田+1文字 | 田中、田村 |
⚠️ 6. よくある間違いと注意点
⚠️ よくある間違い(※横スクロールできます)
【よくある間違い】
❌ 間違い1: AND条件とOR条件を混同
→ 意図しないデータが表示される
✅ 正しい理解:
通常フィルター: 複数列 = AND条件
詳細フィルター: 同じ行 = AND、別の行 = OR
❌ 間違い2: 条件範囲のヘッダーが元データと違う
→ フィルターが正しく動作しない
✅ 正しい:
条件範囲のヘッダーは元データと完全一致させる
❌ 間違い3: 数値条件の書き方を間違える
→ >=1500(正)、1500以上(誤)
✅ 正しい記号:
= : 等しい
> : より大きい
>= : 以上
< : より小さい
<= : 以下
<> : 等しくない
⚠️ 詳細フィルターの注意点
詳細フィルターを使用すると、元のデータが非表示になるのではなく、別の場所に抽出される設定も選べます。「フィルタオプションの設定」ダイアログで「指定した範囲に抽出する」を選択した場合は注意してください。
詳細フィルターを使用すると、元のデータが非表示になるのではなく、別の場所に抽出される設定も選べます。「フィルタオプションの設定」ダイアログで「指定した範囲に抽出する」を選択した場合は注意してください。
📝 練習問題
練習 1
初級
営業部門で売上高1500以上のデータを表示してください(AND条件)
A列 B列 C列
1 名前 部署 売上高
2 田中 営業 1500
3 佐藤 開発 1200
4 鈴木 営業 2000
5 伊藤 総務 1300
6 山田 営業 1800
操作手順:
- データタブ → フィルター(Ctrl+Shift+L)
- B列(部署)の▼ → 「営業」だけを選択
- C列(売上高)の▼ → 数値フィルター → 指定の値以上 → 「1500」
- OK
結果:
A列 B列 C列
1 名前 部署 売上高
2 田中 営業 1500
4 鈴木 営業 2000
6 山田 営業 1800
解説: 通常のフィルター機能で複数列にフィルターをかけると、自動的にAND条件になります。「営業」かつ「1500以上」の両方を満たすデータだけが表示されます。
練習 2
中級
「田」を含む名前、または売上高1800以上のデータを表示してください(OR条件)
A列 B列 C列
1 名前 部署 売上高
2 田中 営業 1500
3 佐藤 開発 1200
4 鈴木 営業 2000
5 山田 総務 1800
6 伊藤 開発 1300
条件範囲の作成:
F列 G列
1 名前 売上高
2 *田*
3 >=1800
操作手順:
- 上記の条件範囲を作成
- データタブ → 詳細設定
- リスト範囲: A1:C6
- 検索条件範囲: F1:G3
- OK
結果:
A列 B列 C列
1 名前 部署 売上高
2 田中 営業 1500
4 鈴木 営業 2000
5 山田 総務 1800
解説: OR条件は詳細フィルターで設定します。条件を別の行に書くことで、「田を含む」または「1800以上」のどちらかを満たすデータが表示されます。
練習 3
上級
(営業で1500以上)または(開発で1800以上)のデータを表示してください
A列 B列 C列
1 名前 部署 売上高
2 田中 営業 1500
3 佐藤 開発 1200
4 鈴木 営業 2000
5 伊藤 開発 1800
6 山田 総務 1300
条件範囲の作成:
F列 G列
1 部署 売上高
2 営業 >=1500
3 開発 >=1800
操作手順:
- 上記の条件範囲を作成
- データタブ → 詳細設定
- リスト範囲: A1:C6
- 検索条件範囲: F1:G3
- OK
結果:
A列 B列 C列
1 名前 部署 売上高
2 田中 営業 1500
4 鈴木 営業 2000
5 伊藤 開発 1800
解説: 各行がAND条件、行同士がOR条件になります。2行目は「営業 AND 1500以上」、3行目は「開発 AND 1800以上」で、この2つの行がOR条件で結ばれます。
練習 4
中級
ワイルドカードを使って「鈴」で始まる名前のデータを抽出してください
A列 B列 C列
1 名前 部署 売上高
2 田中 営業 1500
3 鈴木 営業 2000
4 鈴村 開発 1600
5 山田 総務 1800
条件範囲の作成:
F列
1 名前
2 鈴*
操作手順:
- 上記の条件範囲を作成
- データタブ → 詳細設定
- リスト範囲: A1:C5
- 検索条件範囲: F1:F2
- OK
結果:
A列 B列 C列
1 名前 部署 売上高
3 鈴木 営業 2000
4 鈴村 開発 1600
解説: ワイルドカード「*」は任意の文字列を表します。「鈴*」は「鈴」で始まるすべての文字列にマッチします。
📝 Step 29 のまとめ
✅ このステップで学んだこと
- AND条件: すべての条件を満たす(通常フィルターで複数列)
- OR条件: いずれかの条件を満たす(詳細フィルター)
- 条件範囲: 同じ行=AND、別の行=OR
- ワイルドカード: *(任意の文字列)、?(任意の1文字)
- 実務活用: 複雑な条件での絞り込みが可能
- 注意点: ヘッダーを一致させる、記号を正しく使う
🎯 次のステップの予告
複数条件でのフィルタリングをマスターしました!次のSTEP 30では、「データの検証(入力規則)」を学びます。正しいデータのみ入力できるようにする方法を習得します。
複数条件でのフィルタリングをマスターしました!次のSTEP 30では、「データの検証(入力規則)」を学びます。正しいデータのみ入力できるようにする方法を習得します。
❓ よくある質問
Q1: AND条件とOR条件はどう使い分けますか?
AND条件: 条件を厳しくして絞り込みたいとき(例: 営業部で売上高い人)
OR条件: 条件を緩くして幅広く抽出したいとき(例: 営業部または売上高い人)
目的に応じて使い分けましょう。
OR条件: 条件を緩くして幅広く抽出したいとき(例: 営業部または売上高い人)
目的に応じて使い分けましょう。
Q2: 詳細フィルターは元データを変更しますか?
いいえ、詳細フィルターも通常のフィルターと同様、データを非表示にするだけで削除はしません。ただし「指定した範囲に抽出する」オプションを選ぶと、別の場所にコピーされます。
Q3: 3つ以上の条件でOR検索できますか?
はい、できます。詳細フィルターの条件範囲で、条件を別々の行に書いていけば、何行でもOR条件として設定できます。
Q4: ワイルドカードはどんな時に使いますか?
部分一致検索をしたい時に便利です。例えば「東京」を含む支店名を検索したり、「営業」という言葉が含まれる部署を検索する際に使います。
Q5: 詳細フィルターの条件範囲はどこに作ればいいですか?
元データの横や下など、空いている場所に作成します。ただし、元データと混ざらないよう、少し離れた場所に作ることをお勧めします。
Q6: Googleスプレッドシートでも同じ方法が使えますか?
基本的なフィルター機能は同じように使えます。ただし、詳細フィルター機能はGoogleスプレッドシートにはないため、QUERY関数やFILTER関数を使って同様の処理を行います(STEP 48で学習)。
Q7: 条件範囲のヘッダーが違うとどうなりますか?
詳細フィルターが正しく動作しません。条件範囲のヘッダーは、元データのヘッダーと完全に一致させる必要があります。スペースや全角・半角の違いにも注意してください。
学習メモ
Excel・Googleスプレッドシート完全マスター - Step 29
📋 過去のメモ一覧
▼