このサイト・インストラクターのネタ帳で
「VBA 乱数」
「乱数 マクロ」
といった検索が行われていました。
VBA(Visual Basic for Applications)で、乱数を発生させるマクロについて調べている方による検索です。
この検索だけでは、どんな仕様が必要とされているのかわかりませんが、以下のようなマクロが参考になるでしょう。
Sub 乱数を発生させる_1から100までの整数()
Dim c As Range
Randomize
For Each c In Selection
c.Value = Int((Rnd * 100) + 1)
Next
セルを選択しておいて上記のマクロを実行すると、選択されていたセルに1から100までの整数の乱数が表示されます。
実際に乱数を発生させるのが、For Each ~ Next文の中で使っているRnd関数です。
Rnd関数は、0以上1未満の、単精度浮動小数点型(Single型)の数値を返します。
1から100までの整数にするために
「Int((Rnd * 100) + 1)」
と100倍した値に1を加算してIntを取っています。
発生させる乱数を、他の範囲に限定したい場合は、この部分を変更するといいでしょう。
乱数のシード値を初期化するために、For Each ~ Next文に入る前に、Randomizeステートメントを入れてあります。
Home » エクセルマクロ・Excel VBAの使い方 » マクロのサンプル » 乱数を発生させるエクセルマクロ-Rnd関数