わえなび ワード&エクセル問題集

当サイトはWordとExcelの実力を鍛える最高水準の特訓問題集です。リンクを張るのは自由です。みんなで勉強しましょう!

【Excel】並べ替えの昇順と降順、優先順位、グループ化、一部分だけの並べ替え

並べ替えとは何でしょうか?

Excelの並べ替えをするときには「疑問」を持ちながら並べ替えをするべきです。何も考えずに並べ替えをしてはいけません。例外はありますが多くの場合、並べ替えとは「行の移動」です。つまり、横の関係(レコード)を保持したまま特定の列を条件として行全体を入れ替えることができます。その他、いろいろなことを考えながら並べ替えをします。

  • 同じ数だった場合の優先順位をどうするか?
  • 順番が入れ替わってはいけない場所はあるか?
  • 順番を元に戻すにはどうすればよいか?
  • 全部を並べ替えるのか、それとも一部だけを並べ替えるのか?
  • 項目名が無かったらどうすればよいか?

そこで、今回は、並べ替えの基本を復習しながら、何を考えながら並べ替えをすればよいかについて解説します。

f:id:waenavi:20190825163340j:plain

 

 

目次

問題文のあとに簡単な操作方法を解説していますが、静止画では、わかりにくいと思いますので、最後に動画を載せています。ぜひご覧ください。

1.昇順とは何か、降順とは何か

問題

次のリストについて、打順を5番から順に並べ替えなさい。また、打順を1番から順にしなさい。

f:id:waenavi:20190825162825j:plain

 

解説

表を全部選択します。

f:id:waenavi:20190825163310j:plain

 

この状態で「降順」を押します。

f:id:waenavi:20190825163316j:plain

 

5番から順になりました。

f:id:waenavi:20190825163318j:plain

 

もう一度、表を全部選択します。

f:id:waenavi:20190825163322j:plain

 

この状態で「昇順」を押します。

f:id:waenavi:20190825163325j:plain

 

1番から順になりました。

f:id:waenavi:20190825163327j:plain

 

「リストを並べ替える」というのは、単に数字を付け替えるという意味ではありません。

f:id:waenavi:20190825163331j:plain

 

1件分のレコードは、特別な指示がない限り、1つのかたまりです。

f:id:waenavi:20190825163334j:plain

 

順番を並べ替えると、行ごと入れ替わります。リストはレコードが独立して作られるため、並べ変わってもデータが変わることはありません。

f:id:waenavi:20190825163337j:plain

 

リストのレコードの順番を上下に入れ替えることを、並べ替えまたはソート(sort)といいます。

f:id:waenavi:20190825163340j:plain

 

並べ替える順番には、昇順(ascendingアセンディング)と、降順(descendingディセンディング)の2種類があります。昇順は、文字通り、数字が上がっていく順番です。本来、決められた順番で並べ替えることです。数字は小さいほうから、1、2、3の順です。アルファベットはABCの順、日本語は50音順です。  

f:id:waenavi:20190825163343j:plain

 

これに対して、数字が下がっていく順番に並べ替えることを降順といいます。昇順の逆です。

f:id:waenavi:20190825163346j:plain

 

2.ユーザー設定の並べ替え

問題

次のリストについて、次の順で並べ替えをしなさい。

  • 選手名の50音順で並べ替えなさい。
  • HRの多いほうから順に並べ替えなさい。
  • 元の打順に戻しなさい。

f:id:waenavi:20190825162825j:plain

 

解説

選手名で並べ替えます。表を全部選択します。

f:id:waenavi:20190825164204j:plain

 

この状態で、ユーザー設定の並べ替えを選びます。

f:id:waenavi:20190825164207j:plain

f:id:waenavi:20190825164211j:plain

 

リストに項目名が入力されていれば、この1行目を左から順に読み込んで、この画面で選択できます。

f:id:waenavi:20190825164215j:plain

 

キーとは、並べ替えの基準となる項目のことであり、フィールド(列)のことです。

f:id:waenavi:20190825164219j:plain

 

ホームタブの右端にある並べ替えと、データタブの真ん中にある並べ替えは同じです。

f:id:waenavi:20190825164221j:plain

 

選手名を選びます。50音順ということは昇順です。

f:id:waenavi:20190825164225j:plain

 

これで完成です。選手名が50音順になります。

f:id:waenavi:20190825164229j:plain

 

次にHRの多いほうから並べます。表を全部選択します。ユーザー設定の並べ替えを選びます。HRを選びます。多いほうから、ということは降順です。

f:id:waenavi:20190825164232j:plain

 

これで完成です。

f:id:waenavi:20190825164238j:plain

 

打順を元に戻します。表を全部選択します。ユーザー設定の並べ替えを選びます。打順の昇順です。

f:id:waenavi:20190825164242j:plain

 

これで完成です。

f:id:waenavi:20190825164709j:plain

 

3.順位が同じ場合の並び順

問題

次のリストについて、打席の昇順または降順で並べ替えると、打席が同じ場合の順番はどのようになるか確認しなさい。また、HRの多いほうから順に並べた後で、打席で並べ替えると、打席が同じ場合の順番はどのようになるか確認しなさい。

f:id:waenavi:20190825162825j:plain

 

解説

打席の列を見ると、同じものが含まれています。並べ替えると、同じ文字だった場合にはどのような順番になるのかが問題となります。

f:id:waenavi:20190825164643j:plain

 

表を全部選択します。ユーザー設定の並べ替えを選びます。打席を選びます。昇順でも降順でも構いません。

f:id:waenavi:20190825164646j:plain

 

右打者と左打者に分かれます。このとき、それぞれの打順を見ると昇順になっています。

f:id:waenavi:20190825164652j:plain

 

HRの降順で並べ替えます。

f:id:waenavi:20190825174547j:plain

f:id:waenavi:20190825174550j:plain

 

打席で並べ替えます。

f:id:waenavi:20190825174553j:plain

 

HRを見るとそれぞれ降順になっています。

f:id:waenavi:20190825174557j:plain

 

並べ替えをするときに、順位が同じだった場合、並べ替える前の順番がそのまま保持されます。並べ替える前に上だったものが、そのまま上位になります。

f:id:waenavi:20190825174600j:plain

 

打順で並べ替えをします。これで、はじめから繰り返し練習ができます。

f:id:waenavi:20190825163327j:plain

 

4.複数回並べ替えをしたときの優先順位

問題

(1)次のリストで、打順の昇順にすると、同じ打順の時はどのような順序になるか。
また、チーム名を降順にした後で、打順の昇順にするとどうなるか。

(2)次の1~3の順で並べ替えをすると、最終的にどのような並び順になるか。

  1. 打順の降順
  2. 打席の降順
  3. チーム名の降順

f:id:waenavi:20190825174802j:plain

 

解説

(1)2回の並べ替え

いまチームDのほうが上になっています。

f:id:waenavi:20190825175235j:plain

 

打順の昇順で並べ替えたとします。

f:id:waenavi:20190825175243j:plain

f:id:waenavi:20190825175247j:plain

 

同じ打順の時は必ず、チームDが上、チームSが下になっています。

f:id:waenavi:20190825175251j:plain

 

次にチーム名の降順にします。

f:id:waenavi:20190825175255j:plain

f:id:waenavi:20190825175302j:plain

 

チームSのほうが上になります。

f:id:waenavi:20190825175305j:plain

 

打順の昇順で並べ替えたとします。

f:id:waenavi:20190825175309j:plain

f:id:waenavi:20190825175313j:plain

 

同じ打順の時、今度は、チームSが上、チームDが下になっています。

f:id:waenavi:20190825175316j:plain

 

打順の昇順に並べ替える操作をしたときに、同じ順位だった場合には、並べ替える前に上だったチームのほうが必ず上になります。

f:id:waenavi:20190825175320j:plain

 

並べ替えをした時に同じ順位のものがあれば、並べ替える前の上下関係がそのまま保持されます。

f:id:waenavi:20190825175323j:plain

 

同じ順位の場合、上下が逆転することはありません。

f:id:waenavi:20190825175327j:plain

 

(2)3回以上の並べ替え

打順の降順で並べ替えます。

f:id:waenavi:20190825175816j:plain

 

5番のほうが上になります。打席の降順にします。

f:id:waenavi:20190825175825j:plain

 

右打者のほうが上になります。チーム名の降順にします。

f:id:waenavi:20190825175833j:plain

 

チームSのほうが上になります。チーム名が同じであれば、それぞれ、右打者のほうが上になっています。つまり、打席の降順です。

f:id:waenavi:20190825175836j:plain

 

さらに、チーム名と左右が同じ選手は、打順の大きいほうが上になっています。つまり、打順の降順です。

f:id:waenavi:20190825175841j:plain

 

打順の降順、打席の降順、チーム名の降順と3つの並べ替えをすると、3番目に操作をした、チーム名の降順が最優先になります。

f:id:waenavi:20190825175851j:plain

 

そして、チーム名が同じ場合は、2番目の打席の降順になります。さらに同じ順位だった場合は、最初の打順の降順になります。

f:id:waenavi:20190825175855j:plain

 

このように、同じリストで何回か並べ替えをしたときは、最後に並べ替えをした順序が最優先となります。そして、優先順位は、操作とは逆の順番になります。

f:id:waenavi:20190825175859j:plain

 

5.レベルの追加

問題

次のリストについて、チーム名の降順で並べ替え、さらに、それぞれのチームで打順の降順にしなさい。

f:id:waenavi:20190825204258j:plain

 

解説

表を全部選択します。

f:id:waenavi:20190825204755j:plain

 

ユーザー設定の並べ替えを選びます。チーム名の降順にすると上半分と下半分が逆になります。

f:id:waenavi:20190825204758j:plain

f:id:waenavi:20190825204803j:plain

 

同順位の場合は並べ替える前の順位が保持されます。この順位を変えることもできます。

f:id:waenavi:20190825204806j:plain

 

表を全部選択します。ユーザー設定の並べ替えを選びます。最優先としてはチーム名の降順です。レベルの追加をします。

f:id:waenavi:20190825204812j:plain

 

次に優先されるキーを打順の降順にします。

f:id:waenavi:20190825204815j:plain

 

チーム名の降順であることに変わりはありませんが、同じチーム内で打順が降順になります。

f:id:waenavi:20190825204818j:plain

 

このように優先順位を決めて複数条件の並べ替えをすることができます。最優先の条件で並べ替えをして、同じ順位のものがあったときは、次に優先される条件で順位を決定します。

f:id:waenavi:20190825204822j:plain

 

6.並べ替えはグループ化でもある

問題

次のリストについて、左打者と右打者に分けて、それぞれ打率の高いほうから順に並べなさい。

f:id:waenavi:20190825204258j:plain

 

解説

左と右に分けるときも、打席で並べ替えをします。このとき、打席が最優先の条件になります。昇順か降順かはどちらでもかまいません。それぞれ打率の高いほうから順に並べますから、打率の降順にします。

f:id:waenavi:20190825205229j:plain

 

これで完成です。

f:id:waenavi:20190825205234j:plain

 

左と右の人を分けるように、グループでまとめるときも並べ替えを使います。さらに、グループごとに並べ替えをするときにも、2番目以降の条件として指定することができます。このように、並べ替えは順序を変えるだけでなく、グループ化の効果もあります。

f:id:waenavi:20190825205239j:plain

 

このとき昇順か降順かは問いません。

f:id:waenavi:20190825205244j:plain

 

7.同数だった場合の条件

問題

(1)次のリストについて、チーム名の昇順で並べ替えなさい。ただし、チーム内でHRの多いほうから順に並べ、HRが同数の場合は選手名の50音順にしなさい。

(2)チーム名の昇順で、打順の昇順にしなさい。

f:id:waenavi:20190825204258j:plain

 

解説

最優先の条件として、チーム名の昇順にします。レベルの追加をします。次の条件として、HRの降順にします。チーム名とホームランの本数が同じだった場合の条件を次に入れます。レベルの追加をします。次の条件として、選手名の昇順にします。

f:id:waenavi:20190825205618j:plain

 

チーム内でホームランの降順になっています。ただし、ホームランの本数が同じ場合は、それぞれ、選手名の50音順になっています。

f:id:waenavi:20190825205623j:plain

 

最初の状態は、チーム名の昇順で、打順の昇順でした。3番目のキーはレベルの削除をします。

f:id:waenavi:20190825210051j:plain

 

並べ替えると元の状態に戻ります。

f:id:waenavi:20190825205857j:plain

 

8.順位を決める

問題

次のリストについて、HRの多いほうから順に順位をつけなさい(数値を直接入力する)。ただし、HRが同数の場合は、打率の良いほうを上位とする。

f:id:waenavi:20190825210144j:plain

 

解説

並べ替えをします。最優先はホームランの降順です。ホームランの本数が同じだった場合は、打率の降順で順位を決めます。

f:id:waenavi:20190825220437j:plain

 

これで完成です。上から順位を入力します。

f:id:waenavi:20190825220444j:plain

 

ちなみに、順番を元に戻したいときは、この順位を含めて並べ替えをします。チーム名の昇順で、打順の昇順です。

f:id:waenavi:20190825220450j:plain

 

これで完成です。

f:id:waenavi:20190825220456j:plain

*補足*順位を手入力するのは、フィルタや一部の行が非表示になっている場合などRANK関数が使えない場合に限られます。

 

別解

打率を10で割った数に、ホームランの本数を足した数をポイントとして多いほうから並べる方法もあります。

f:id:waenavi:20190825220707j:plain

 

小数点より左の整数部分がホームラン数、下3桁が打率になっています。

f:id:waenavi:20190825220720j:plain

 

ポイントの降順にします。これで、ホームランと打率の降順になります。

f:id:waenavi:20190825220728j:plain

 

9.リストの一部だけ順序を変える

問題

次のリストについて、チームSだけ打順を降順にしなさい。

f:id:waenavi:20190825222710j:plain

 

解説

チームSだけ選択します。この部分には項目名がありません。

f:id:waenavi:20190826000436j:plain

 

並べ替えをします。「先頭行をデータの見出しとして使用する」のチェックを入れると、1行目が項目名とみなされます。1行目のデータが表示されます。

f:id:waenavi:20190826000441j:plain

 

これは間違った状態です。

f:id:waenavi:20190826000445j:plain

 

チェックを外すと、列番号が表示されます。

f:id:waenavi:20190826000452j:plain

 

選択した範囲に項目名がないのでこれが正しい状態です。

f:id:waenavi:20190826000457j:plain

 

チェックを外した状態でB列を選びます。降順にします。

f:id:waenavi:20190826000507j:plain

 

これで完成です。

f:id:waenavi:20190826000512j:plain

 

データの見出しとは項目名のことです。

f:id:waenavi:20190826000515j:plain

 

先頭行をデータの見出しとして使用すると、範囲選択をした部分の先頭行は項目名となるので並べ替えは2行目以降になります。

f:id:waenavi:20190826000519j:plain

 

先頭行をデータの見出しにしない場合、先頭行も並べ替えの対象になります。

f:id:waenavi:20190826000522j:plain

 

項目名がないので、列番号でキーを指定します。

f:id:waenavi:20190826000526j:plain

 

項目名があればチェックを入れ、項目名がない範囲であればチェックを外します。

f:id:waenavi:20190826000529j:plain

 

10.グループに分けてそれぞれ並べ替える

問題

次のリストについて、左打者と右打者にわけて、左打者はHRの降順、右打者は打率の降順にしなさい。

f:id:waenavi:20190825222710j:plain

 

解説

表を全部選択します。

f:id:waenavi:20190826013110j:plain

 

項目名があるのでチェックが入った状態が正解です。

f:id:waenavi:20190826013114j:plain

 

打者を左と右に分けるときは、打席を最優先にして並べ替えます。昇順か降順かは問いません。さらに、ホームランの降順にしておきます。

f:id:waenavi:20190826013120j:plain

 

これで左打者についてはホームランの降順になりました。

f:id:waenavi:20190826013123j:plain

 

右打者だけ選択します。項目名がないのでチェックが外れている状態が正解です。打率、つまり、F列の降順にします。

f:id:waenavi:20190826013127j:plain

 

これで、左打者はホームランの降順、右打者は打率の降順になります。

f:id:waenavi:20190826013131j:plain

 

1つのリストの中に、異なる条件の並べ替えが複数ある時は、それぞれ選択して並べ替えます。

f:id:waenavi:20190826013135j:plain

 

11.合計(集計行)は除外しなければならない

問題

次のリストをHRの降順にしなさい。

f:id:waenavi:20190826013826j:plain

 

誤答例

表全部を選んで、ホームランの本数で降順にします

f:id:waenavi:20190826014526j:plain

 

合計が一番大きい数なので、一番上になりますが、合計はゼロになります。これは間違った操作です。

f:id:waenavi:20190826014530j:plain

 

解説

最後に合計の行があるときは、この行を外して範囲選択します

f:id:waenavi:20190826014532j:plain

 

ホームランの本数で降順にします。

f:id:waenavi:20190826014535j:plain

 

これで完成です。

f:id:waenavi:20190826014540j:plain

 

並べ替えの対象となるのはレコードだけです。集計行はレコードではないので、並べ替えの対象から外します。

f:id:waenavi:20190826014544j:plain

 

12.結合セルは除外しなければならない

問題

各チームについてHRの降順にしなさい。

f:id:waenavi:20190826014057j:plain

 

解説

本来ならば、並べ替えを前提とするリストでは、セルの結合をしてはいけません

f:id:waenavi:20190826020920j:plain

 

もし、結合されていれば並べ替えの対象外になります。

f:id:waenavi:20190826020924j:plain

 

左側が結合されている場合は、これを外して並べ替えをします。

f:id:waenavi:20190826020928j:plain

 

ホームランの本数で降順にします。

f:id:waenavi:20190826020931j:plain

 

エラーになります。

f:id:waenavi:20190826020934j:plain

 

打席が結合されています。これはレコードの独立性に反します。リストを作るうえで、このような入力をしてはいけません。

f:id:waenavi:20190826020938j:plain

 

結合を解除します。

f:id:waenavi:20190826020941j:plain

 

改めて並べ替えをします。

f:id:waenavi:20190826020944j:plain

 

これで完成です。

f:id:waenavi:20190826020948j:plain

 

それぞれのチームで並べ替えをします。

f:id:waenavi:20190826020951j:plain

f:id:waenavi:20190826020956j:plain

f:id:waenavi:20190826020959j:plain

 

本来ならば、チーム名も結合してはいけません。結合を解除して、このように入力します。

f:id:waenavi:20190826021006j:plain

 

また、合計の欄も不要です。

f:id:waenavi:20190826021003j:plain

 

これで、チーム名の昇順、HRの降順にすれば、各チームについてHRの降順になります。

f:id:waenavi:20190826021009j:plain

 

リストで、SUM関数を使って合計を求める必要はありません。

f:id:waenavi:20190826021016j:plain

 

Excelに小計を求める機能が備わっているからです。

f:id:waenavi:20190826021019j:plain

 


解説は以上です。


13.動画版はこちら(無料)

この記事は、わえなび実力養成講座「ファンダメンタルExcel」Program 7-6、7-6-2、7-7、7-8のYoutube動画を書き起こして、加筆修正したものです。

 

 


Copyright(C)2018-2019 waenavi, All rights reserved. [www.waenavi.com 定礎 平成三十年八月]