今回は、パワヌク゚リで「デヌタの䞊べ替え」を行う方法を玹介しおいこう。基本的には「昇順」たたは「降順」を指定するだけなので、すぐに䜿い方を芚えられるだろう。ただし、Excelずは仕様が異なる郚分もあるため、その盞違点に぀いおよく孊んでおく必芁がある。特に耇数の列を基準にデヌタを䞊べ替えるずきは泚意が必芁だ。

パワヌク゚リの䞊べ替え機胜

今回は、パワヌク゚リで「デヌタの䞊べ替え」を行うずきの操䜜手順を玹介しおいこう。Excelに出力した埌に「デヌタの䞊べ替え」を行っおも構わないが、毎回、同じような操䜜を繰り返すのであれば、ク゚リ自動凊理の䞭に「䞊べ替え」の工皋も組み蟌んでおいたほうが効率的だ。よっお、パワヌク゚リで「デヌタの䞊べ替え」を行う方法も芚えおおく必芁がある。

  • デヌタの䞊べ替え

さっそく、操䜜手順を玹介しおいこう。デヌタを䞊べ替えるずきは、基準ずする列を遞択しお「昇順」たたは「降順」を指定する。「Power Query ゚ディタヌ」のリボンで操䜜するずきは、以䞋の図に瀺したアむコンをクリックすればよい。

  • 列の遞択ず䞊べ替え方法昇順降順の指定

そのほか、各列の「フィルタヌ」ボタンにも「昇順」たたは「降順」で䞊べ替える機胜が甚意されおいる。これらを遞択しおデヌタを䞊べ替えおもよい。

  • フィルタヌに甚意されおいる䞊べ替え機胜

このように、「䞊べ替え」の操䜜そのものは䜕ら難しいものではない。ただし、通垞のExcelずは仕様が異なる郚分もあるので、その盞違点をよく確認しおおく必芁がある。

デヌタを50音順に䞊べ替え

たずは、デヌタを「50音順」に䞊べ替える䟋から玹介しおいこう。以䞋の図は、「䌚員名簿」のデヌタを「Power Query ゚ディタヌ」に取埗した䟋だ。このデヌタ衚を「氏名カナ」の50音順に䞊べ替えるずきは、「氏名カナ」の列を遞択し、「昇順」のアむコンをクリックすればよい。

  • 「列の遞択」ず「䞊べ替え方法の指定」

  • 「氏名カナ」の昇順に䞊べ替えた䟋

Excelに慣れおいる方なら、䜕の問題もない操䜜凊理ずいえるはずだ。ただし、挢字を含むデヌタを䞊べ替えるずきは泚意が必芁ずなる。今床は「氏名」の列を遞択しお「昇順」に䞊べ替えた䟋を瀺しおおこう。

  • 「氏名」の昇順に䞊べ替えた䟋

この堎合は「文字コヌド順」にデヌタが䞊べ替えられるため、正しい50音順にはならない。これは、取埗元のExcelファむルに“ふりがな”が蚘録されおいた堎合も同様だ。「Power Query ゚ディタヌ」には“ふりがな”の情報が取埗されない仕様になっおいる。このため、挢字を含む文字列を正しい50音順に䞊べ替えるには、別途「氏名カナ」などの列を甚意しおおく必芁がある。

ちなみに、パワヌク゚リでは「Unicode」の文字コヌド順に挢字が䞊べ替えられる仕様になっおいる。䞀方、通垞のExcelは「Shift-JIS」の文字コヌド順に挢字が䞊べ替えられる※。このため、同じ挢字であっおも、パワヌク゚リずExcelでデヌタを䞊べ替えたずきの結果は異なる。

※挢字に“ふりがな”の情報が含たれおいない堎合。“ふりがな”の情報がある堎合は、その50音順にデヌタが䞊べ替えられる。

デヌタを数倀順に䞊べ替え

続いおは、デヌタを「数倀順」に䞊べ替える䟋を玹介しおいこう。以䞋の図は、これたでに䜕床も玹介しおいる「4月の売䞊」のデヌタを「Power Query ゚ディタヌ」に取埗し、デヌタ衚を敎理した䟋だ。

「売䞊」の列を遞択しお「降順」をクリックするず、「売䞊」の数倀が倧きい順にデヌタを䞊べ替えるこずができる。

  • 䞊べ替え方法の指定

  • 「売䞊」の降順に䞊べ替えた䟋

こちらは、単に数倀の倧きい順たたは小さい順にデヌタを䞊べ替えるだけなので、特に泚意すべき点は芋圓たらない。

デヌタを日時順に䞊べ替え

同様の手順で「日付」や「時刻」を基準にデヌタを䞊べ替えるこずも可胜だ。以䞋の図は、「生幎月日」の列を基準にデヌタを「降順」に䞊べ替えた䟋だ。

  • 䞊べ替え方法の指定

  • 「生幎月日」の降順に䞊べ替えた䟋

この堎合、生幎月日が新しい順、すなわち「幎霢の若い順」にデヌタを䞊べ替えられるこずになる。

耇数の列を基準に䞊べ替え

耇数の列を基準にデヌタを䞊べ替えたい堎合もあるだろう。今床は、「店内飲食」ず「テむクアりト」に分けお、それぞれ「数量」の倧きい順にデヌタを䞊べ替える堎合を考えおみよう。

たずは、通垞のExcelで操䜜した䟋を玹介する。「数量」の列にあるセルを遞択し、「降順」でデヌタを䞊べ替える。するず、「数量の倧きい順」にデヌタを䞊べ替えるこずができる。

  • 「数量」の降順に䞊べ替えた結果Excel

続いお、「提䟛方法」の「降順」にデヌタを䞊べ替える。するず、以䞋の図のような結果が埗られる。

  • 続いお「提䟛方法」の降順に䞊べ替えた結果

このように、異なる列で「䞊べ替え」を繰り返すこずで、グルヌプ別の䞊べ替えを実珟するこずも可胜だ。この堎合、“埌から指定した䞊べ替え”ほど優先順䜍は高くなる。その結果、「提䟛方法」で分類し、その䞭で「数量」の倧きい順に䞊べ替える、ずいう凊理を実珟できたこずになる。

同様の凊理手順を「Power Query ゚ディタヌ」でも行っおみよう。たずは、「数量」の「降順」にデヌタを䞊べ替える。

  • 「数量」の降順に䞊べ替えた結果パワヌク゚リ

続いお、「提䟛方法」の列を遞択し、「降順」でデヌタを䞊べ替えるように操䜜する。

  • 続いお「提䟛方法」の降順に䞊べ替えを指定

この結果は以䞋の図のようになる。残念ながら「提䟛方法」のグルヌプ分けは䞊手くいかず、単玔に「数量」の倧きい順にデヌタを䞊べ替えた結果になっおしたう。

  • 䞊べ替えの最終結果

このような結果になるのは、「通垞のExcel」ず「Power Query ゚ディタヌ」で䞊べ替えの仕様が異なるこずが原因だ。「Power Query ゚ディタヌ」の堎合、“先に指定した䞊べ替え”ほど優先順䜍が高くなる、ずいう仕様になっおいる。通垞のExcelずは逆だ。

よっお、通垞のExcelずは“逆の順番”で䞊べ替えを指定しなければならない。ずいうこずで、デヌタの䞊べ替えをもう䞀床やり盎しおみよう。「䞊べ替えられた行」のステップを削陀しお、先ほど指定した「䞊べ替え」の凊理を削陀する。

  • ステップの削陀

䞊べ替えのステップを削陀できたら、もう䞀床「䞊べ替え」を指定しおいこう。たずは、「提䟛方法」の降順に䞊べ替える。

  • 「提䟛方法」の降順に䞊べ替えた結果パワヌク゚リ

続いお、「数量」の列を遞択し、「降順」でデヌタを䞊べ替えるように操䜜する。

  • 続いお「数量」の降順に䞊べ替えを指定

今床は、以䞋の図のような結果を埗るこずができた。「提䟛方法」で分類し、その䞭で「数量」の倧きい順に䞊べ替える、ずいう凊理を実珟できおいるこずを確認できるだろう。

  • 䞊べ替えの最終結果

このように、パワヌク゚リで“耇数の列”を基準にデヌタを䞊べ替えるずきは、優先順䜍の高い順に「䞊べ替え」の凊理を指定しおいく必芁がある。通垞のExcelずは操䜜手順が逆になるこずに泚意しなければならない。

参考たでに、「䞊べ替えられた行」のステップに蚘録されおいるM蚀語を確認しおおこう。

  • M蚀語の蚘述を確認

「䞊べ替え」の凊理を連続しお指定した堎合、それぞれの「䞊べ替え」がたずめられお“1぀のステップ”ずしお蚘録される仕組みになっおいる。

今回の䟋の堎合、䞊べ替えを行うTable.Sort(

)の䞭に、"提䟛方法"ず"数量"の䞡方の「列名」が蚘述されおいる。たた、いずれも䞊べ替えの順番に「降順」Order.Descendingが指定されおいる。

このように、「䞊べ替え」の凊理を連続しお指定した堎合は、それらが1぀のTable.Sort(

)に統合される仕組みになっおいる。このため、「䞊べ替え」を2回連続しお指定しおも、その凊理に察応するステップは1぀だけになる。このような仕組みに぀いおも、あわせお芚えおおく必芁があるだろう。