我已經創建,是爲了做以下一個簡單的模塊:隨機數宏不會返回所希望的值
- 生成0和999之間的隨機數;
- 如果數低於500,分配值「下」,否則爲「高」
- 寫在單元格A1和B1
- 重複該過程10萬次的隨機數和分配的值。
問題是,即使數字大於或等於500,即所有賦值爲100,000,它們都是「較低」,它會返回賦值「lower」!
我很感激,如果有人可以檢查我的錯在哪裏這個代碼;我不是在VBA方面的專家,但我想我會這樣做我自己......:\
Sub MacroRanNum()
Dim RunNum As Integer
Dim Outcome As String
For i = 1 To 100000
Randomize
RanNum = Int((999 - 0 + 1) * Rnd + 0)
If RunNum < 500 Then
Outcome = "Lower"
ElseIf RunNum >= 500 Then
Outcome = "Higher"
Else
Outcome = "Error!"
End If
Sheets("podatak").Cells(i, 1) = RanNum
Sheets("podatak").Cells(i, 2) = Outcome
Next i
End Sub
如果我是你,我會只打一次Randomize。與人們相信這可以使數字隨意性相反。 (PS:這不能回答你的問題)。 – 2015-04-02 08:34:56
感謝您的建議!我會檢查,我讀到Randomize應該每次調用,所以我把它放在循環中... – strugar 2015-04-03 09:26:32