Rnd 函式
會傳回包含虛擬隨機數的 Single 。
語法
Rnd [ (Number) ]
選擇性的 Number 自變數是單一或任何有效的數值表達式。
傳回值
如果 Number 為 | Rnd 會產生 |
---|---|
小於 0 | 每次使用 Number 做為 種子時,都會有相同的數位。 |
大於 0 | 虛擬隨機序列中的下一個數位。 |
等於 0 | 最近產生的數位。 |
未提供 | 虛擬隨機序列中的下一個數位。 |
註解
Rnd 函式會傳回小於 1 但大於或等於零的值。
Number 的值會決定 Rnd 如何產生虛擬隨機數:
對於任何指定的初始種子,都會產生相同的數位序列,因為每個連續呼叫 的 Rnd 函數都會使用前一個數位做為序列中下一個數字的種子。
在呼叫 Rnd 之前,請使用不含自變數的 Randomize 語句,以根據系統定時器的種子初始化隨機數產生器。
若要在指定範圍中產生隨機整數,請使用下列公式:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
在這裡, upperbound 是範圍中最高的數位, 而lowerbound 是範圍中的最低數位。
注意事項
若要重複隨機數序列,請在搭配數值自變數使用 Randomize 之前,立即使用負數自變數呼叫 Rnd。 對 Number 使用具有相同值的 Randomize 並不會重複先前的序列。
範例
這個範例會使用 Rnd 函數來產生從 1 到 6 的隨機整數值。
Dim MyValue As Integer
MyValue = Int((6 * Rnd) + 1) ' Generate random value between 1 and 6.
另請參閱
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。