ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

乱数ジェネレータを初期化 (乱数系列を再設定) する(Randomize ステートメント)

   

Randomize ステートメントの使い方


Rnd 関数 を使用する前に使用します。Randomize ステートメントを使用せず、乱数にシード値を設定しない場合、マクロを含むブックを一度閉じてから再度開いて実行した結果が常に一定となります。
シード値とは、乱数発生ルーチンの初期値に使われる値のことです。

【書式】

Randomize [ ( number ) ]


引数・戻り値

  • number  ・・・  シードを選択するための数値を指定します。
    引数 number を省略した場合、システムタイマーから取得した値(Timer 関数の戻り値)が新しいシード値として使われます。この場合ほぼ毎回違う値を得ることができます。

乱数系列を繰り返すには、数値を指定して Randomize ステートメントを実行する直前に、負の引数を指定して Rnd 関数を呼び出します。引数 number に同じ値を指定して Randomize ステートメントを使用しても、前の乱数系列を繰り返すことはできません。




Randomize 関数の使用例

サンプルVBAソース


実行結果

上記「サンプルVBAソース」をセルA1 からA5 で実行します。

Randomize 関数 例1

保存したブックを開いて「サンプルVBAソース」をセルB1 からB5 で実行した結果

Randomize 関数 例2

Randmize ステートメントを実行して乱数ジェネレータを初期化した後に、Rnd 関数 を実行したため、A 列、B 列の数値が変わりました。
乱数シード値を設定しない場合は、実行結果は常に一定となります。
( ⇒ Rnd 関数使用例2を参照)




 - VBA基本 , , , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

no image
XlThemeColor 列挙型

XlThemeColor 列挙 定数 値 内容 xlThemeColorDark …

ClearContents メソッド 例01
データをクリアする(ClearContents メソッド)

ClearContents メソッド 対象がセル範囲(Range オブジェクト) …

日付時刻:日付時刻から情報取得( DatePart 関数 )

DatePart 関数(日付・時刻の値から情報を取得) 【書式】 result …

UBound LBound 関数 使用例01
配列の要素数を取得する(UBound 関数・LBound 関数)

UBound 関数・LBound 関数 【書式】 result = UBound …

Spc 関数 01
指定した数のスペースを挿入する(Spc 関数)

指定した数のスペースを挿入 指定した数のスペースを挿入するには、Spc 関数を使 …

配列(多次元配列・配列の次元の変更)

多次元配列 【書式】 多次元配列の宣言 <静的配列(固定長配列)> Dim my …

対象のオブジェクトをクリアする(Clear メソッド)

Clear メソッド 対象となるオブジェクト全体をクリアします。Range オブ …

日付時刻:年・月・日を取得(Year、Month、Day 関数)

日付から年・月・日を取得する関数 【書式】 date_year = Year ( …

文字列:文字列の長さを取得( Len 関数、LenB 関数 )

Len 関数(文字列の長さを取得) 【書式】 result_len = Len …

指定した値を16進数で表記した文字列に変換する(Hex 関数)

Hex 関数 の使い方 【書式】 result = Hex ( expressi …