Vba: randbetween を使用して乱数を生成する方法
VBA でRandBetweenメソッドを使用すると、2 つの特定の値の間のランダムな整数を生成できます。
このメソッドを実際に使用する一般的な 2 つの方法を次に示します。
方法 1: RandBetween を使用してランダムな整数を生成する
SubGenerateRandomInteger ()
Range(" A1 ") = WorksheetFunction.RandBetween(1, 100)
End Sub
この特定のマクロは、セルA1に 1 ~ 100 のランダムな整数を生成します。
方法 2: RandBetween を使用して複数のランダムな整数を生成する
Sub GenerateMultipleRandomIntegers()
Dim i As Integer
For i = 1 To 10
Range(" A " & i) = WorksheetFunction.RandBetween(1, 100)
Next i
End Sub
この特定のマクロは、 A1:A10の範囲内の各セルに対して 1 ~ 100 のランダムな整数を生成します。
次の例は、これらの各メソッドを実際に使用する方法を示しています。
例 1: RandBetween を使用してランダムな整数を生成する
1 から 100 までの乱数を生成し、その結果を Excel の現在のシートのセルA1に配置するとします。
これを行うには、次のマクロを作成できます。
SubGenerateRandomInteger ()
Range(" A1 ") = WorksheetFunction.RandBetween(1, 100)
End Sub
このマクロを実行すると、次の出力が表示されます。
セルA1に値36が含まれていることに注目してください。
このマクロを実行するたびに、1 ~ 100 の異なる整数値が生成される可能性があることに注意してください。
例 2: RandBetween を使用して複数のランダムな整数を生成する
代わりに、範囲A1:A10内の各セルに対して 1 から 100 までのランダムな整数を生成するとします。
これを行うには、次のマクロを作成できます。
Sub GenerateMultipleRandomIntegers()
Dim i As Integer
For i = 1 To 10
Range(" A " & i) = WorksheetFunction.RandBetween(1, 100)
Next i
End Sub
このマクロを実行すると、次の出力が表示されます。
A1:A10の範囲内の各セルには、1 ~ 100 のランダムな整数が含まれることに注意してください。
注: RandBetween VBA メソッドの完全なドキュメントはここにあります。
追加リソース
次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。
VBA: AVERAGEIF 関数と AVERAGEIFS 関数の書き方
VBA: SUMIF 関数と SUMIFS 関数の書き方
VBA: COUNTIF 関数と COUNTIFS 関数の書き方