Public Function RandomLongWithinRange( _ Optional ByVal vLower As Variant _ , Optional ByVal vUpper As Variant _ ) As Variant
Rnd(-1) = 0.224007 RandomLongWithinRange() = -1441975373 RandomLongWithinRange() = 45807082 RandomLongWithinRange() = 731094033 RandomLongWithinRange(1) = 193665383 RandomLongWithinRange(1) = 1951270193 RandomLongWithinRange(1) = 1337778316 RandomLongWithinRange(1, 100000) = 71296 RandomLongWithinRange(1, 100000) = 67593 RandomLongWithinRange(1, 100000) = 87716Note: The call to the Visual Basic Rnd function in the above example seeds the Visual Basic random number generator so that the sample results can be reproduced. There is generally no need to call the Rnd function within your programs since Entisoft Tools initializes the Visual Basic random number generator once with "Randomize" statement.
RandomLongWithinExpRange Function RandomIntegerWithinRange Function RandomLongWithinRangeVerify SubroutinevLower: The lower limit of the range in which the generated random number will fall. vLower defaults to MinLong if it is missing or Null or cannot be fixed up to a number.
vUpper: The upper limit of the range in which the generated random number will fall. vUpper defaults to MaxLong if it is missing or Null or cannot be fixed up to a number.
Function returns Null if vLower > (is greater than) vUpper.
Function returns vLower if vLower = (equals) vUpper.
CLng(Int(dblRnd * (1 + vUpper - vLower) + vLower))Algorithm: Before using the Visual Basic Help method for generating numbers within a range, this method uses the random parts of the Single value returned by the built-in Rnd function to construct a fairly-random Double precision value to which the range function is applied. This is done to avoid the problem of having certain long values which can never possibly get generated because the precision of the individual Single precision random value returned by VB does not contain enough precision to guarantee it.
Copyright 1996-1999 Entisoft
Entisoft Tools is a trademark of Entisoft.