ExcelVBA(マクロ)でランダムな数(乱数)を作る方法/Rnd関数の使い方

luck IT

Rnd関数を使うことで、VBA内で乱数を発生させることができます。
Excel関数で乱数を作りたい場合は、Rand関数を用います。

Advertisements

Rnd関数の使い方

乱数の作成
Rnd(数値)
※作成される数値は0以上1未満
※数値を省略、または0より大きい数値の場合、実行する度にちがう数となる
※数値が0の場合は直前に生成した乱数と同じ数値を返す
-の場合は何度実行しても数値ごとに決まった同じ数値を返す

引数が0より大きい場合

単純に乱数作りたいだけであれば、Rndと書くだけでOKです。

rnd1
まずrndの後に0より大きい数字を入れて、MsgBoxで結果を表示してみます。小数でもOKです。
rnd2
すると毎回このように、
rnd3
0以上1未満のランダムな数値(乱数)が表示されます。
rnd4
数字の大きさは関係なく、0より大きければ全て同様に挙動します。
rnd5
また、数値を省略した場合も同様に毎回ちがう乱数を作成します。

引数が0、マイナスの数の場合

rnd6
引数が0でRndメソッドを実行すると、前回Rndで表示したのと同じ数を表示します。
rnd7
数値がマイナスの場合は、数値ごとに固定された数が出ます。同じ数値であれば何回実行しても同じ数です。
rnd8
数値が変わればちがう乱数が表示されます。
rnd9
ここからまた数値を0にすると、やっぱり前回と同じ数値が出ます。
やりたいことから方法を探すエクセルExcel操作・関数・VBA(マクロ)逆引きまとめ
逆引き(やりたいことから探す)Excel記事まとめ
関数・演算子・メソッド・プロパティ名から探すExcel/VBA(マクロ)使い方・組み合わせ方まとめ
こちらはExcelやメソッドの諸機能を、機能の名称から探せるまとめ記事です。

コメント