Excel。最新関数で、手早く重複なく整数をランダムで表示したい。
<SORTBY+SEQUENCE+RANDARRAY関数>
整数の数値をランダムで表示したい。
しかも、重複しないようにしたい場合、Microsoft365やExcel2021で登場した3つの関数を使うことで、手早く算出することができます。
今回は、1~10までの整数とします。
A1に次の数式を設定します。
=SORTBY(SEQUENCE(10),RANDARRAY(10))
これで、重複しないで1~10の数値をランダムで表示することができます。
今までは、RAND関数で一度、ランダムの数値を算出して、その数値の順位を算出する。
その後、RANK.EQ関数をつかって、重複しないランダムの数値をつくっていました。
手間が結構かかったわけですね。
ところが、一つの数式で、算出できるようになったというわけです。
SORTBY関数とSEQUENCE関数とRANDARRAY関数で、算出することができるようになりました。
では、
=SORTBY(SEQUENCE(10),RANDARRAY(10))
の仕組みを確認しておきましょう。
SORTBY関数は、範囲内にある値を並べ替えする関数です。
最初の引数は、「配列」です。SEQUENCE関数をつかって、1~10の値をつくります。
SEQUENCE(10)とすることで、行ごとに1から10の数値を算出してくれます。
これで、1~10の範囲を得ることができます。
2つ目の引数は、「基準配列1」です。並べ替えを行うための基準です。
ここに、RANDARRAY関数をつかって、ランダムの数値をつくり、基準とします。
SORTBY関数とSEQUENCE関数とRANDARRAY関数は、スピル機能に対応した関数なので、オートフィルで数式をコピーする必要はありません。
そのため、A1に数式を設定するだけで済みます。
今回紹介した、SORTBY関数とSEQUENCE関数とRANDARRAY関数をはじめとして、新しい関数が色々追加されています。
確認してみると、可読性の高い数式に修正することができるかもしれませんね。