Step 27:複数条件での並べ替え

🔄 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キーも同じ値のとき、さらに並べ替える基準
最大64個のキーまで設定できますが、実務では2〜3個が一般的です。

📊 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スプレッドシートには組み込みのカスタムリスト機能がありません。代わりに、ヘルパー列を使う方法があります。
  • 別の列に順序を表す数字を入力(高=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で元に戻せないことがあります。重要なデータは:
  • 並べ替える前にコピーを取っておく
  • 元の順序を記録する「No.」列を作っておく
  • 別シートにバックアップを作成

📝 練習問題

練習 1
初級

クラス(昇順)→ 点数(降順)で並べ替えてください

A列 B列 C列 1 名前 クラス 点数 2 田中 A組 85 3 鈴木 A組 92 4 佐藤 B組 78 5 伊藤 B組 88

操作手順:

  1. A1:C5を選択
  2. [データ]タブ → [並べ替え]
  3. 「先頭行をデータの見出しとして使用する」に ✓
  4. 第1キー:クラス(昇順)
  5. [レベルの追加] → 第2キー:点数(降順)
  6. [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

操作手順:

  1. A1:C6を選択
  2. [データ]タブ → [並べ替え]
  3. 「先頭行をデータの見出しとして使用する」に ✓
  4. 第1キー:部門(昇順)
  5. [レベルの追加] → 第2キー:売上高(降順)
  6. [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のカスタムリストを使用

  1. A1:C5を選択
  2. [データ]タブ → [並べ替え]
  3. 第1キー:日付(昇順)
  4. 第2キー:時刻(昇順)
  5. 第3キー:優先度 → 順序で「ユーザー設定リスト」を選択
  6. 「高, 中, 低」のリストを作成または選択
  7. [OK]

方法2:ヘルパー列を使用

  1. D列に優先度の順序番号を入力(高=1, 中=2, 低=3)
  2. 第3キーをD列(昇順)に設定
  3. 並べ替え後に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では、「フィルター機能の基礎」を学びます。必要なデータだけを表示する方法を習得します。

❓ よくある質問

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

📋 過去のメモ一覧
#artnasekai #学習メモ
LINE