Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


9227 / 13646 ツリー ←次へ | 前へ→

【28633】乱数について教えてください なな 05/9/10(土) 19:56 質問[未読]
【28634】Re:乱数について教えてください でれすけ 05/9/10(土) 20:10 回答[未読]
【28635】Re:乱数について教えてください なな 05/9/10(土) 21:05 お礼[未読]

【28633】乱数について教えてください
質問  なな  - 05/9/10(土) 19:56 -

引用なし
パスワード
   VBAの初心者です。
0から5までの数字の乱数を出すには、
n=int(6*rnd)
ですよね。
でも、これだと、毎回違う乱数が出てしまいます。

同じ乱数系列を繰り返すにはどうすればいいのですか?

昔のbasicだと、
10 randomize(1)
20 for i=1 to 10
30  print int(rnd*6),
40 next i

randomize<数式> の使い方を教えてください。

【28634】Re:乱数について教えてください
回答  でれすけ  - 05/9/10(土) 20:10 -

引用なし
パスワード
   こんばんわ

Rnd、Randomizeのヘルプに書いてありました。
Randomizeを呼び出す前にRndを負の引数を与えて呼び出す
必要があるようです。


Sub sample()

For j = 1 To 3
 Rnd (-1)
 Randomize 1
 For i = 1 To 10
  Debug.Print Int(Rnd * 6);
 Next
 Debug.Print
Next

End Sub

【28635】Re:乱数について教えてください
お礼  なな  - 05/9/10(土) 21:05 -

引用なし
パスワード
   早速の回答、ありがとうございました。
実際にVBAで書いてみて、実行して、納得しました。

sub 乱数()

  dim n,i as integer
  rnd(-1)
  randomize 1 
  For i = 1 To 10
  n=int(Rnd*6)
  cells(i,1)=n
  next

End Sub

助かりました。

9227 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free