RAND関数:乱数を発生させる

広告

RAND 関数は Excel で用意されている関数の一つで、 0 以上 1 未満の範囲の実数の乱数を発生させます。ここでは Excel における RAND 関数の使い方について解説します。

(2021 年 09 月 18 日公開 / 2021 年 09 月 18 日更新)

RAND関数の使い方

RAND 関数は乱数を発生させます。 RAND 関数の場合は 0 以上から 1 未満の範囲の実数が返されます。

RAND()

RAND 関数には引数がありません。

RAND 関数は呼び出されるたびに指定の範囲で乱数を発生させます。

=RAND()
--> 0.059234447

=RAND()
--> 0.687846284

指定した範囲で乱数を発生させる

乱数を 0 以上 1 未満ではなく指定の範囲の乱数を発生させることもできます。例えば a 以上 b 未満の範囲で乱数を発生させるには RAND() の代わりに RAND()*(b-a)+a と記述してください。下記では 10 以上 20 未満の乱数を発生させています。

=RAND()*(20-10)+10
--> 18.33066055

=RAND()*(20-10)+10
--> 11.27081808

なお整数になりますが、 RANDBETWEEN 関数を使用すると乱数を発生させる範囲を引数で指定することができます。詳しくは「RANDBETWEEN関数:指定した範囲で整数の乱数を発生させる」を参照されてください。

RAND関数のサンプル

それでは実際に RAND 関数を使ってみます。 Excel のシートで結果を表示する B2 セルに次のように RAND 関数を入力します。

=RAND()

RAND関数のサンプル(1)

Enter キーを押すと、 B2 セルには次のように表示されます。

RAND関数のサンプル(2)

再計算に伴う乱数の再取得について

RAND 関数を使う場合に注意する点としては、 RAND 関数が入力された Excel のシートで再計算が行われると、その都度 RAND 関数は別の乱数を発生させるという点です。例えば先ほど RAND 関数を入力したセルにはその時に発生した乱数が表示されています。

RAND関数のサンプル(3)

同じシートの別の場所で何らかの式を入力し計算を実行してみます。

RAND関数のサンプル(4)

すると RAND 関数が入力されていたセルでは新しい乱数が発生して新しい値に書き変わります。

RAND関数のサンプル(5)

このようにセルに RAND 関数を入力した場合には、再計算が行われるたびに乱数の値が変更される点に注意してください。

発生した乱数を数値として保存する

Excel のシートで再計算が行われても一度発生した乱数が変更されないようにするには、乱数を生成すると同時に生成した乱数を数値としてセルに保存します。まず乱数を発生させるセルで次のように RAND 関数を入力してください。

=RAND()

RAND関数のサンプル(6)

ここで Enter キーを押すのではなく F9 キーを押してください。すると発生した乱数が数値としてセルに入力されます。

RAND関数のサンプル(7)

Enter キーを押すと、入力した数値がセルに表示されます。

RAND関数のサンプル(8)

この場合、 B2 セルには RAND 関数が入力されているのではなく、発生した乱数の数値がセルに入力されているので、同じ Excel のシート上で再計算が行われてもセルに入力された数値は変更されません。

関数の挿入を使ってRAND関数を入力する

RAND 関数を入力する場合に関数の挿入を使って行う方法を試してみます。関数を挿入するセルをクリックして選択したあとで、関数の挿入をクリックします。

関数の挿入を使ってRAND関数を入力する(1)

「関数の挿入」ダイアログが表示されたら関数名のところで「RAND」をクリックしてください。そのあとで「OK」をクリックしてください。

関数の挿入を使ってRAND関数を入力する(2)

「関数の引数」ダイアログが表示されたら、 RAND 関数は引数がありませんので「OK」をクリックしてください。

関数の挿入を使ってRAND関数を入力する(3)

最初に選択したセルに RAND 関数が入力され、発生した乱数がセルに表示されます。

関数の挿入を使ってRAND関数を入力する(4)

-- --

Excel における RAND 関数の使い方について解説しました。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。