VBA Function: Rnd

The VBA Rnd function returns a random number less than 1 and greater than or equal to 0.

Usage:

Rnd


Example of Usage

Some examples of values returned by the Rnd function:

Sub example()
    
    Randomize
    
    MsgBox Rnd 'Returns, for example: 0.1902762
    MsgBox Rnd 'Returns, for example: 0.743448
    MsgBox Rnd 'Returns, for example: 0.4867069
    MsgBox Rnd 'Returns, for example: 0.9157002
    MsgBox Rnd 'Returns, for example: 0.7048649
    MsgBox Rnd 'Returns, for example: 0.1706603
    
End Sub
Important: always add the Randomize statement in your procedure or function before using the Rnd function (to avoid getting much less random results than expected).

Generate a random integer between 1 and 10 using the Rnd function:

Function randomInteger()
    
    Randomize
    
    randomInteger = Int(Rnd * 10 + 1)
    
End Function

Sub example()
    
    MsgBox randomInteger 'Returns, for example: 8
    MsgBox randomInteger 'Returns, for example: 1
    MsgBox randomInteger 'Returns, for example: 10
    MsgBox randomInteger 'Returns, for example: 7
    MsgBox randomInteger 'Returns, for example: 9
    MsgBox randomInteger 'Returns, for example: 2
    MsgBox randomInteger 'Returns, for example: 6
    
End Sub