La función VBA Rnd devuelve un número aleatorio menor que 1 y mayor o igual que 0.
Rnd
Algunos ejemplos de valores devueltos por la función Rnd:
Sub RndExample1()
Randomize
MsgBox Rnd 'Devuelve, por ejemplo: 0.1790262
MsgBox Rnd 'Devuelve, por ejemplo: 0,734448
MsgBox Rnd 'Devuelve, por ejemplo: 0,4870669
MsgBox Rnd 'Devuelve, por ejemplo: 0,9100572
MsgBox Rnd 'Devuelve, por ejemplo: 0,7860449
MsgBox Rnd 'Devuelve, por ejemplo: 0.1607063
End Sub
Generemos un entero aleatorio del 1 al 10 usando la función Rnd:
Function RandomNumber()
Randomize
RandomNumber = Int(Rnd * 10 + 1)
End Function
Sub RndExample2()
MsgBox RandomNumber 'Devuelve, por ejemplo: 6
MsgBox RandomNumber 'Devuelve, por ejemplo: 2
MsgBox RandomNumber 'Devuelve, por ejemplo: 10
MsgBox RandomNumber 'Devuelve, por ejemplo: 7
MsgBox RandomNumber 'Devuelve, por ejemplo: 9
MsgBox RandomNumber 'Devuelve, por ejemplo: 1
MsgBox RandomNumber 'Devuelve, por ejemplo: 8
End Sub