# RND([number])

Returns a random number between 0 and 1 (Single).

 number The number or any valid numerical expression (Single).

 REMARKS
 * This function should be used in conjunction with the RANDOMIZE statement.* The value returned is less than 1 and greater than or equal to 0.* The "number" determines how the random number is generated.* If "number" < 0, then the same number is returned every time.* If "number" > 0, then the next random number in the sequence is returned.* If "number" = 0, then the most recently generated number is returned.* If "number" is left blank, then the next random number in the sequence is returned.* To create the same sequence of random numbers every time, call RND with a negative value, RANDOMIZE with a numeric argument followed by subsequent calls to RND.* To create random numbers in a given range, use the Excel user defined function RANDOMNUMBER.* The equivalent Excel function is Application.WorksheetFunction.RAND* The equivalent .NET function is Microsoft.VisualBasic.VBMath.Rnd* For the Microsoft documentation refer to docs.microsoft.com

`'Use RND and RANDOMIZE to create the same sequence of random numbers every timeDebug.Print Rnd(-10)   '= 0.3276443  Call VBA.Randomize(10) Debug.Print Rnd()      '= 0.2077829  Debug.Print Rnd()      '= 0.4407803  Debug.Print Rnd()      '= 0.6152623  'RND function with a negative number returns the same number every timeDebug.Print Rnd(-10)   '= 0.3276443  Debug.Print Rnd(-10)   '= 0.3276443  Debug.Print Rnd(-10)   '= 0.3276443  'RND function with a positive number returns a different number every timeDebug.Print Rnd(10)    '= volatile  Debug.Print Rnd(10)    '= volatile  Debug.Print Rnd(10)    '= volatile  'RND function with no number returns a different number every timeDebug.Print Rnd()      '= volatile  Debug.Print Rnd()      '= volatile  Debug.Print Rnd()      '= volatile  `