ExcelのVBAのRnd関数で、乱数を生成するサンプルです。
目次
Rnd関数 | Rnd関数 |
配列の値をランダムに表示する |
Rnd関数
Rnd関数は、0 以上 1 未満の値を乱数で返します。
乱数を整数で取得する+範囲をつける場合
Int((最大値 - 最小値 + 1) * Rnd + 最小値) |
乱数を整数で取得する+範囲をつける場合は、上記の式を使用します。
整数を取得する場合は、Intを使用します。
乱数の値を1から10にしたい場合は、最小値に1、最大値に10をセットします。
以下は、MicrosoftのVBAのRnd 関数のリンクです。
https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/rnd-function
Rnd 関数のサンプルです。
Sub test1()
Dim a As Integer
a = Int((2 - 0 + 1) * Rnd + 0)
Debug.Print a '0から2
a = Int((3 - 1 + 1) * Rnd + 1)
Debug.Print a '1から3
End Sub
5行目は、Rnd 関数で乱数を生成して最大値(2)と最小値(0)の計算を行いintで整数を返しています。
7行目は、0から2の値をランダムに返します。
10行目は、Rnd 関数で乱数を生成して最大値(3)と最小値(1)の計算を行いintで整数を返しています。
12行目は、1から3の値をランダムに返します。
配列の値をランダムに表示する
配列の値をランダムに表示するサンプルです。
Sub test1()
Dim ar1 As Variant
ar1 = Array("赤", "黄", "青")
r = Int((2 - 0 + 1) * Rnd + 0) '0から2
Debug.Print ar1(r) '
End Sub
5行目は、配列です。
7行目は、0から2の値をランダムに返します。配列のインデックス値になります。
9行目は、配列の値をランダムに表示します。
関連の記事