3/24/2025

Excel。列を並べ替えた別表を、手早く作るにはどうしたらいい【SORT】

Excel。列を並べ替えた別表を、手早く作るにはどうしたらいい

<SORTBY+XMATCH関数>

得点表があります。


A1:G7の表は、

「英語・国語・数学・理科・社会」という順番になっています。


これを、「数学・理科・英語・国語・社会」という順番で並べ替えをしたい。


自力で、コピペを繰り返して列を並べ替えるのは、とても面倒です。


何か、効率の良い方法で、手早くつくることはできないものでしょうか。


そこで、SORTBY関数とXMATCH関数を組み合わせることで、列を並べ替えた別表をつくることができます。


I2をクリックします。

SORTBY+XMATCH関数

次の数式を設定します。

=SORTBY(A2:G7,XMATCH(A1:G1,I1:O1))


数式を確定して、並び順を確認してみると、きちんと列方法で並べ替えされていることが確認できます。


この数式をつかうには、事前に、並べ替えをしたい順の見出しを用意する必要があります。


さて、この数式を確認しておきましょう。


SORTBY関数は、並べ替えを行う関数です。

最初の引数は、「配列」。

範囲なので、A2:G7


SORTBY関数は、スピル機能対応の関数なので、絶対参照は不要です。


次の引数は、基準1。

並べ替えをおこなうルールのことです。

ここにXMATCH関数をつかいます。


そのXMATCH関数は、MATCH関数の上位版の関数です。

MATCH関数と同じで、指定したデータが何番目にあるかを求めることができます。


XMATCH関数の最初の引数は、検索値です。

検索値は、A1:G1。


次の引数は、検索範囲で、I1:O1


XMATCH関数の結果は、

{1,2,5,6,3,4,7}


この順番で列を並べ替えることができたというわけです。