🔄 Step 27: 複数条件での並べ替え
第1キー、第2キーを使った高度な並べ替えをマスター!
📋 このステップで学ぶこと
- 第1キー、第2キーの概念
- 複数条件での並べ替え方法
- 優先順位の理解
- カスタムリストの活用
- 実務での活用例
🎯 1. 複数条件での並べ替えとは
なぜ複数条件が必要なのか
STEP 26で学んだ1つの条件だけでは、順序が決まらない場合があります。例えば「クラス順に並べたいけど、同じクラスの中では点数が高い順にしたい」というとき、2つの条件が必要です。
🏠 日常生活に例えると…
運動会の整列を想像してください。
運動会の整列を想像してください。
- まず学年順に並ぶ(第1キー)
- 同じ学年の中ではクラス順に並ぶ(第2キー)
- 同じクラスの中では出席番号順に並ぶ(第3キー)
1つの条件だけでは不十分な例
📊 クラスだけで並べ替えると…(※横スクロールできます)
【元のデータ】
A列 B列 C列
1 名前 クラス 点数
2 田中 A組 85
3 鈴木 A組 92
4 佐藤 B組 78
5 伊藤 B組 88
6 山田 A組 90
【クラスだけで並べ替え(不十分)】
A列 B列 C列
1 名前 クラス 点数
2 田中 A組 85 ← A組の中の順番が
3 鈴木 A組 92 ← バラバラのまま
4 山田 A組 90
5 佐藤 B組 78
6 伊藤 B組 88
⚠️ A組の中で田中、鈴木、山田の順序が決まっていない!
📊 クラス+点数で並べ替えると…(※横スクロールできます)
【クラス(昇順)→ 点数(降順)で並べ替え】
A列 B列 C列
1 名前 クラス 点数
2 鈴木 A組 92 ← A組の中で最高点
3 山田 A組 90 ← A組の中で2番目
4 田中 A組 85 ← A組の中で3番目
5 伊藤 B組 88 ← B組の中で最高点
6 佐藤 B組 78 ← B組の中で2番目
✅ クラスごとにグループ化され、
各クラス内で点数の高い順に並んだ!
🔑 複数条件の考え方
- 第1キー:最優先で並べ替える基準(大きなグループ分け)
- 第2キー:第1キーが同じ値のとき、次に並べ替える基準
- 第3キー:第2キーも同じ値のとき、さらに並べ替える基準
📊 2. 第1キー、第2キーの概念
キーの優先順位
📊 優先順位のイメージ(※横スクロールできます)
【優先順位の流れ】
┌─────────────────────────────────────────┐
│ │
│ 🥇 第1キー(最優先) │
│ ↓ │
│ まず第1キーで並べ替える │
│ │
│ 🥈 第2キー(次に優先) │
│ ↓ │
│ 第1キーが同じ値のとき、 │
│ 第2キーで並べ替える │
│ │
│ 🥉 第3キー(さらに次) │
│ ↓ │
│ 第2キーも同じ値のとき、 │
│ 第3キーで並べ替える │
│ │
└─────────────────────────────────────────┘
具体例:社員名簿の並べ替え
📊 3つのキーを使った並べ替え(※横スクロールできます)
【目標】
部署ごとに、役職順に、年齢の高い順に並べたい
【キー設定】
🥇 第1キー:部署(昇順)
→ 営業 → 総務 → 開発 の順
🥈 第2キー:役職(カスタム順)
→ 部長 → 課長 → 一般 の順
🥉 第3キー:年齢(降順)
→ 同じ役職の中で年齢が高い順
【結果イメージ】
営業部
└ 部長 45歳
└ 課長 42歳
└ 課長 38歳(同じ役職なら年齢で)
└ 一般 30歳
└ 一般 25歳
総務部
└ 部長 50歳
└ …
開発部
└ …
🥇 第1キーの役割
データを大きなグループに分ける
データを大きなグループに分ける
- 部署でグループ化
- クラスでグループ化
- カテゴリでグループ化
🥈 第2キーの役割
グループ内の順序を決める
グループ内の順序を決める
- 売上金額の高い順
- 点数の高い順
- 日付の新しい順
📝 3. 複数条件での並べ替え方法
Excelでの操作手順
📋 ステップバイステップ(※横スクロールできます)
【操作手順】
Step 1: データ範囲を選択
→ ヘッダー行を含めてすべてのデータを選択
→ 例:A1:C6
Step 2: 並べ替えダイアログを開く
→ [データ]タブ → [並べ替え]ボタン
Step 3: 見出し行の設定
→ 「先頭行をデータの見出しとして使用する」に ✓
Step 4: 第1キーを設定
→ 列を選択(例:クラス)
→ 順序を選択(昇順 or 降順)
Step 5: 第2キーを追加
→ [レベルの追加]ボタンをクリック
→ 列を選択(例:点数)
→ 順序を選択(昇順 or 降順)
Step 6: 必要に応じて第3キー以降も追加
Step 7: [OK]をクリック
並べ替えダイアログの見方
📊 ダイアログボックスの構成(※横スクロールできます)
┌────────────────────────────────────────────┐
│ 並べ替え │
├────────────────────────────────────────────┤
│ ☑ 先頭行をデータの見出しとして使用する │
├────────────────────────────────────────────┤
│ │
│ 第1キー │
│ ┌──────────────┐ ┌──────────┐ │
│ │ クラス ▼ │ │ 昇順 ▼ │ │
│ └──────────────┘ └──────────┘ │
│ │
│ 第2キー │
│ ┌──────────────┐ ┌──────────┐ │
│ │ 点数 ▼ │ │ 降順 ▼ │ │
│ └──────────────┘ └──────────┘ │
│ │
│ [+ レベルの追加] [- レベルの削除] │
│ │
├────────────────────────────────────────────┤
│ [OK] [キャンセル] │
└────────────────────────────────────────────┘
Googleスプレッドシートでの操作
📋 Googleスプレッドシートの手順(※横スクロールできます)
【操作手順】
Step 1: データ範囲を選択
Step 2: メニューから並べ替えを選択
→ [データ] → [範囲を並べ替え] → [範囲の並べ替えの詳細オプション]
Step 3: 見出し行の設定
→ 「データにヘッダー行が含まれている」に ✓
Step 4: 第1キーを設定
→ 列を選択、A→Z(昇順)or Z→A(降順)
Step 5: 第2キーを追加
→ [別の並べ替え列を追加]をクリック
→ 列と順序を設定
Step 6: [並べ替え]をクリック
⚠️ 重要な注意点
- 必ずヘッダー行を含めて選択する
- 「先頭行をデータの見出しとして使用する」にチェックを入れる
- チェックを忘れると、ヘッダー行もデータとして並べ替えられてしまう
💼 4. 実用例
例1:成績表の並べ替え
📊 クラス別・点数順(※横スクロールできます)
【元のデータ】
A列 B列 C列
1 名前 クラス 点数
2 田中 A組 85
3 鈴木 A組 92
4 佐藤 B組 78
5 伊藤 B組 88
6 山田 A組 90
【キー設定】
第1キー:クラス(昇順)
第2キー:点数(降順)
【結果】
A列 B列 C列
1 名前 クラス 点数
2 鈴木 A組 92 ← A組トップ
3 山田 A組 90
4 田中 A組 85
5 伊藤 B組 88 ← B組トップ
6 佐藤 B組 78
例2:売上データの並べ替え
📊 部門別・売上高順(※横スクロールできます)
【元のデータ】
A列 B列 C列
1 社員名 部門 売上高
2 田中 営業 1,500,000
3 佐藤 営業 2,000,000
4 鈴木 開発 1,200,000
5 伊藤 営業 1,800,000
6 山田 開発 1,500,000
【キー設定】
第1キー:部門(昇順)
第2キー:売上高(降順)
【結果】
A列 B列 C列
1 社員名 部門 売上高
2 山田 開発 1,500,000 ← 開発トップ
3 鈴木 開発 1,200,000
4 佐藤 営業 2,000,000 ← 営業トップ
5 伊藤 営業 1,800,000
6 田中 営業 1,500,000
例3:イベントスケジュールの並べ替え
📊 日付・時刻・優先度順(※横スクロールできます)
【元のデータ】
A列 B列 C列 D列
1 日付 時刻 会議名 優先度
2 2025/1/15 10:00 定例会 中
3 2025/1/15 10:00 緊急会議 高
4 2025/1/10 14:00 報告会 高
5 2025/1/15 09:00 朝礼 低
【キー設定】
第1キー:日付(昇順)
第2キー:時刻(昇順)
第3キー:優先度(カスタム:高→中→低)
【結果】
A列 B列 C列 D列
1 日付 時刻 会議名 優先度
2 2025/1/10 14:00 報告会 高
3 2025/1/15 09:00 朝礼 低
4 2025/1/15 10:00 緊急会議 高 ← 同日同時刻なら優先度順
5 2025/1/15 10:00 定例会 中
📈 売上管理での活用
- 第1キー:商品カテゴリ
- 第2キー:売上金額(降順)
👥 社員名簿での活用
- 第1キー:部署
- 第2キー:役職
- 第3キー:入社年
📅 イベント管理での活用
- 第1キー:日付
- 第2キー:開始時刻
📦 在庫管理での活用
- 第1キー:倉庫
- 第2キー:棚番号
- 第3キー:商品コード
🎨 5. カスタムリストによる並べ替え
カスタムリストとは
通常の昇順・降順以外に、独自の順序で並べ替えることができます。「月」「曜日」「評価ランク」など、辞書順では正しく並ばないデータに使います。
📊 通常の昇順だと困る例(※横スクロールできます)
【問題】月を昇順で並べ替えると…
❌ 通常の昇順(辞書順)
10月
11月
12月
1月 ← あれ?1月が後ろに
2月
3月
→ 文字として比較するので「1」より「10」が先になる
✅ カスタムリスト(月の順序)
1月
2月
3月
…
10月
11月
12月
→ 月の正しい順序で並ぶ
カスタムリストの例
| データの種類 | カスタムリストの順序 |
|---|---|
| 月 | 1月, 2月, 3月, … 12月 |
| 曜日 | 日曜日, 月曜日, 火曜日, … 土曜日 |
| サイズ | S, M, L, XL |
| 評価 | 高, 中, 低 |
| 優先度 | 緊急, 高, 中, 低 |
カスタムリストの設定方法
📋 Excelでの手順(※横スクロールできます)
【操作手順】
Step 1: 並べ替えダイアログを開く
→ [データ]タブ → [並べ替え]
Step 2: キーを設定
→ 列を選択(例:優先度)
Step 3: 順序のドロップダウンをクリック
→ [ユーザー設定リスト…]を選択
Step 4: カスタムリストを選択または新規作成
→ 既存のリスト(月、曜日など)を選択
→ または「新しいリスト」に独自の順序を入力
例:高, 中, 低
Step 5: [OK]をクリック
💡 Googleスプレッドシートでのカスタムリスト
Googleスプレッドシートには組み込みのカスタムリスト機能がありません。代わりに、ヘルパー列を使う方法があります。
Googleスプレッドシートには組み込みのカスタムリスト機能がありません。代わりに、ヘルパー列を使う方法があります。
- 別の列に順序を表す数字を入力(高=1, 中=2, 低=3)
- その列で並べ替えを行う
- 並べ替え後にヘルパー列を非表示または削除
⚠️ 6. よくある間違いと注意点
間違い1:キーの順序を逆にした
❌ よくある間違い(※横スクロールできます)
【目標】クラスごとに、点数の高い順に並べたい
❌ 間違い:
第1キー:点数(降順)
第2キー:クラス(昇順)
→ 全体が点数順になり、クラスがバラバラに
✅ 正しい:
第1キー:クラス(昇順)← まずクラスでグループ化
第2キー:点数(降順)← クラス内で点数順
→ クラスごとにグループ化され、各クラス内で点数順
間違い2:ヘッダー行の扱いを間違える
❌ よくある間違い(※横スクロールできます)
❌ 間違い:
「先頭行をデータの見出しとして使用する」にチェックを入れない
→ ヘッダー行(名前、クラス、点数)も一緒に並べ替えられる
→ ヘッダーがデータの途中に移動してしまう!
✅ 正しい:
「先頭行をデータの見出しとして使用する」に ✓
→ ヘッダー行は固定され、データだけが並べ替えられる
間違い3:昇順・降順を間違える
❌ よくある間違い(※横スクロールできます)
【点数の高い順にしたいとき】
❌ 間違い:昇順を選択
→ 低い順(50, 60, 70, 80, 90…)になる
✅ 正しい:降順を選択
→ 高い順(90, 80, 70, 60, 50…)になる
【覚え方】
・昇順(A→Z, 小→大):上り坂 🔼
・降順(Z→A, 大→小):下り坂 🔽
・高い順にしたい → 降順
・低い順にしたい → 昇順
⚠️ 並べ替えは元に戻せない
複数条件の並べ替えは、Ctrl+Zで元に戻せないことがあります。重要なデータは:
複数条件の並べ替えは、Ctrl+Zで元に戻せないことがあります。重要なデータは:
- 並べ替える前にコピーを取っておく
- 元の順序を記録する「No.」列を作っておく
- 別シートにバックアップを作成
📝 練習問題
練習 1
初級
クラス(昇順)→ 点数(降順)で並べ替えてください
A列 B列 C列
1 名前 クラス 点数
2 田中 A組 85
3 鈴木 A組 92
4 佐藤 B組 78
5 伊藤 B組 88
操作手順:
- A1:C5を選択
- [データ]タブ → [並べ替え]
- 「先頭行をデータの見出しとして使用する」に ✓
- 第1キー:クラス(昇順)
- [レベルの追加] → 第2キー:点数(降順)
- [OK]
結果:
A列 B列 C列
1 名前 クラス 点数
2 鈴木 A組 92
3 田中 A組 85
4 伊藤 B組 88
5 佐藤 B組 78
練習 2
中級
部門(昇順)→ 売上高(降順)で並べ替えてください
A列 B列 C列
1 社員名 部門 売上高
2 田中 営業 1500000
3 佐藤 営業 2000000
4 鈴木 開発 1200000
5 伊藤 営業 1800000
6 山田 開発 1500000
操作手順:
- A1:C6を選択
- [データ]タブ → [並べ替え]
- 「先頭行をデータの見出しとして使用する」に ✓
- 第1キー:部門(昇順)
- [レベルの追加] → 第2キー:売上高(降順)
- [OK]
結果:
A列 B列 C列
1 社員名 部門 売上高
2 山田 開発 1500000
3 鈴木 開発 1200000
4 佐藤 営業 2000000
5 伊藤 営業 1800000
6 田中 営業 1500000
練習 3
上級
日付(昇順)→ 時刻(昇順)→ 優先度(高→中→低)で並べ替えてください
A列 B列 C列
1 日付 時刻 優先度
2 2025/1/15 10:00 高
3 2025/1/15 10:00 中
4 2025/1/10 14:00 高
5 2025/1/15 09:00 低
※ 優先度はカスタムリストまたはヘルパー列を使用
方法1:Excelのカスタムリストを使用
- A1:C5を選択
- [データ]タブ → [並べ替え]
- 第1キー:日付(昇順)
- 第2キー:時刻(昇順)
- 第3キー:優先度 → 順序で「ユーザー設定リスト」を選択
- 「高, 中, 低」のリストを作成または選択
- [OK]
方法2:ヘルパー列を使用
- D列に優先度の順序番号を入力(高=1, 中=2, 低=3)
- 第3キーをD列(昇順)に設定
- 並べ替え後にD列を削除
結果:
A列 B列 C列
1 日付 時刻 優先度
2 2025/1/10 14:00 高
3 2025/1/15 09:00 低
4 2025/1/15 10:00 高
5 2025/1/15 10:00 中
📝 Step 27 のまとめ
✅ このステップで学んだこと
- 第1キー:最優先の並べ替え基準(大きなグループ分け)
- 第2キー:第1キーが同じ値のときの基準
- 優先順位:上から順に評価される
- カスタムリスト:月、曜日、評価など独自の順序で並べ替え
- 実務活用:部門別売上、クラス別成績、スケジュール管理など
- 注意点:元に戻せないので事前にバックアップを取る
🎯 次のステップの予告
複数条件での並べ替えをマスターしました!次のStep 28では、「フィルター機能の基礎」を学びます。必要なデータだけを表示する方法を習得します。
複数条件での並べ替えをマスターしました!次のStep 28では、「フィルター機能の基礎」を学びます。必要なデータだけを表示する方法を習得します。
❓ よくある質問
Q1: 何個のキーまで設定できますか?
Excelでは最大64個のキーを設定できます。ただし、実務では2〜3個で十分なことがほとんどです。あまり多くのキーを設定すると、かえって分かりにくくなります。
Q2: 並べ替えた後、元に戻せますか?
Ctrl+Zで戻せる場合もありますが、確実ではありません。重要なデータは、並べ替える前に「No.」列を作って元の順序を記録するか、別シートにコピーしてバックアップを取っておきましょう。
Q3: 昇順と降順、どちらを使えばいいですか?
- 昇順:小さい順、A→Z、古い順(日付)、低い順
- 降順:大きい順、Z→A、新しい順(日付)、高い順
Q4: キーの順序を間違えるとどうなりますか?
意図した結果になりません。例えば「クラス → 点数」の順にしたいのに「点数 → クラス」にすると、全体が点数順になりクラスがバラバラになります。キーの順序は「まず何でグループ化したいか」を考えて設定しましょう。
Q5: Googleスプレッドシートでカスタムリストは使えますか?
直接の機能はありませんが、ヘルパー列で代用できます。例えば「高→中→低」の順にしたい場合、別の列に「高=1, 中=2, 低=3」と数値を入力し、その列で並べ替えます。
Q6: 空白セルはどこに並びますか?
昇順では最後、降順でも最後に並びます。空白セルは常に末尾に配置されます。空白を先頭にしたい場合は、空白セルに何か値(例:「-」)を入れる必要があります。
Q7: ヘッダー行を含めずに選択してしまったらどうなりますか?
ヘッダー行もデータとして並べ替えられてしまいます。「名前」「クラス」「点数」などの見出しが、データの途中に移動してしまいます。必ずヘッダー行を含めて選択し、「先頭行をデータの見出しとして使用する」にチェックを入れましょう。
学習メモ
Excel・Googleスプレッドシート完全マスター - Step 27
📋 過去のメモ一覧
▼