Rnd 関数

擬似乱数を含む Single を 返します。

構文

Rnd [ (数値) ]

省略可能な Number引数 は、 単一 または任意の有効な 数値式です。

戻り値

数値 Rnd が返す値
0 より小さい シードとして Number を使用して、毎回同じ 数値 を指定 します
0 より大きい 擬似ランダム シーケンス内の次の数値。
0 に等しい 最近生成された乱数。
省略 擬似ランダム シーケンス内の次の数値。

注釈

Rnd 関数は、0 以上 1 未満の値を返します。

Number の値は、Rnd が擬似乱数を生成する方法を決定します。

  • 所定の初期シードの場合、同じ番号シーケンスが生成されます。これは、Rnd 関数を連続して呼び出すたびに、シーケンス内の次の値のシードとして、前の値が使用されるためです。

  • Rnd を呼び出す前に、引数を指定せずに Randomize ステートメントを使用して、システム タイマーに基づくシードを使用して乱数ジェネレーターを初期化します。

所定の範囲でランダムな整数を生成するには、次の式を使用します。

Int((upperbound - lowerbound + 1) * Rnd + lowerbound)

ここで、upperbound には範囲の上限の値を指定し、lowerbound には範囲の下限の値を指定します。

注:

乱数のシーケンスを繰り返す場合は、数値の引数を指定した Randomize を使用する直前に、負の引数を指定した Rnd を呼び出します。 Number に同じ値で Randomize を使用しても、前のシーケンスは繰り返されません。

この例では、Rnd 関数を使用して、1 から 6 までのランダムな整数を生成します。

Dim MyValue As Integer
MyValue = Int((6 * Rnd) + 1)    ' Generate random value between 1 and 6.

関連項目

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。