構文
Rnd(Number) As Single
Number・・・・通常は省略で使用します。
戻り値 ・・・・・Single型 0~1の間の浮動小数点で返ります
戻り値 ・・・・・Single型 0~1の間の浮動小数点で返ります
0 以上 1 未満の乱数を返します。
Randomizeと併用して使用する事で、シード値が変更となりランダムな値を習得します。
Randomizeと併用して使用する事で、シード値が変更となりランダムな値を習得します。
Rnd関数のサンプルコード
Public Sub sample_rnd() '■使用前にRandmizeで乱数系列のシード値を変更させる(初期化) Randomize '■0~1未満の小数点がランダムに戻ってくる Debug.Print Rnd() '0.4150355 Debug.Print Rnd() '0.1599039 Debug.Print Rnd() '0.4977473 '■ランダムな整数値を取得する場合はInt関数を併用する(下記例は1~6の範囲で取得) Debug.Print Int(6 * Rnd + 1) '1 Debug.Print Int(6 * Rnd + 1) '5 Debug.Print Int(6 * Rnd + 1) '2 '1~6を乱数で求める式は以下 '↓Int((最大値-最小値+ 1 )* Rnd +最小値)) '↓Int(( 6 - 1 + 1 )* Rnd + 1 )) '↓Int(( 6 )* Rnd + 1 )) '■ランダムで整数値以外を使用する場合は以下。 Dim num As Long num = Int(3 * Rnd + 1) '1 Select Case num Case 1 Debug.Print "大吉" Case 2 Debug.Print "中吉" Case 3 Debug.Print "小吉" End Select End Sub
注意点
- Rnd関数を使用前にRandmizeで乱数を初期化しましょう。
しないと保存してブック閉じる→再度開くと前回と同じ値を取得してしまいます。
コメント