Excel

【excel】エクセルでランダムな数字を生成(重複しない:関数:入れる)する方法【並び替え:同じものは使わない:被りなし】

当サイトでは記事内に広告を含みます。

この記事では、エクセルでランダムな数字を生成(重複しない:関数:入れる)する方法【並び替え:同じものは使わない:被りなし】について解説していきます。

ではサンプルを見ていきましょう。

 

エクセルでランダムな数字を生成・入力(重複しない:被りなし)を表示する方法1【関数:0から1未満の乱数】

エクセルで重複しない乱数を生成する方法はいくつかあります。RANDBETWEEN関数ではランダムな数字を出せますが、絶対重複しないということはありません。

そこでまずはRAND関数とRANK関数を使う方法を解説します。

RAND関数は0以上1未満の乱数を生成します。

 

A1セルに “=RAND()” と入れ、A10までオートフィルします。サンプルのように10個の乱数が表示されましたね。

 

よく見れば重複いないことはわかります、次にRANK.EQ関数を使って重複しない1~10の数字を出してみましょう。B1セルに以下の数式を入れます。

 =RANK.EQ(A1,A:A,1)

 

最後の「1」は表示する順序で、昇順で数字を降ります。「0」を指定すると降順で数字が降られます。

 

B列は1~10の重複しない数字が作成されましたね。

 

エクセルでランダムな数字を入れる(重複しない)を表示する方法2【1から10までの間】

次はUNIQUE関数とRANDARRAY関数を使って重複のない1から10までのランダムな数字を表示してみましょう。

A1セルに以下のように数式を入れます。

=UNIQUE(RANDARRAY(10,1,1,10))

1~10の間で10個のランダムで重複のない数字が生成されましたね。RANDARRAY関数では必要に応じてセルの範囲や最小値、最大値を変更できます。

 

先ほどと同じようにRANK.EQ関数を使って重複しない1~10の数字を出してみましょう。B1セルに以下の数式を入れます。

=RANK.EQ(A1,A:A,1)

B列に1~10までの範囲内で整数の10個の数字が生成されましたね。

 

なお、UNIQUE関数とRANDARRAY関数はExcel2019以降のバージョンで導入されました。

UNIQUE関数構文

=UNIQUE(配列, [列の比較], [回数指定])

※配列:抽出する元データの範囲または配列を指定

 

RAND ARRAY関数構文

=RANDARRA(行, 列, 最小, 最大, 整数)

※引数は全て省略可能、全て省略すると入力したセルに1つだけ乱数を返す

 

エクセルでランダムな数字(重複しない乱数)を表示する方法3

次はSEQUENCE関数とSORTBY関数、RANDARRAY関数を組み合わせて、ランダムな数値を表示させてみましょう。

D1セルに以下の数式を入れます。

 =SORTBY(SEQUENCE(10), RANDARRAY(10))

この方法だと綺麗に1〜10のランダムな数値が表示されましたね。

 

なお、ここで紹介した関数(SORTBY, SEQUENCE, RANDARRAY)もExcel2019以降のバージョンで導入されました。

SORTBY関数構文

=SORTBY(範囲, 基準, 順序, …126個記述可能)

※範囲:元のデータの範囲

※基準:並べ替えの基準となるデータの範囲指定

※順序:1 昇順、-1 降順

 

まとめ エクセルで重複し内ランダムな数字を出力・表示(重複しない乱数)する方法【関数:同じものは使わない:被りなし】

この記事では、エクセルでランダムな数字(重複しない乱数)を関数で表示する方法について解説しました。

ここで紹介したUNIQUE関数、RANDARRAY関数、SORTBY関数、SEQUENCE関数はExcel2021以降でサポートされました。もし2019までのExcelバージョンの場合は、最初に紹介したRAND関数とRANK.EQ関数による方法をご利用下さい。

エクセルの様々な処理を理解し、業務に役立てていきましょう。