Restituisce un valore Single contenente un numero casuale.
Sintassi
Rnd[(num)]
Il numeroargomento facoltativo è un singolo o qualsiasi espressione numerica valido.
Valori restituiti
Se num è |
Rnd genera |
Minore di zero |
Lo stesso numero ogni volta, usando num come valore iniziale. |
Maggiore di zero |
Numero casuale successivo nella sequenza. |
Uguale a zero |
Numero generato più di recente. |
Non fornito |
Numero casuale successivo nella sequenza. |
Osservazioni
La funzione Rnd restituisce un valore minore di 1 ma maggiore o uguale a zero.
Il valore di num determina in che modo Rnd genera un numero casuale:
Per qualsiasi valore di inizializzazione iniziale specificato, viene generata la stessa sequenza numerica perché ogni chiamata successiva alla funzione Rnd utilizza il numero precedente come seed per il numero successivo nella sequenza.
Prima di chiamare Rnd, utilizzare l'istruzione Randomize senza un argomento per inizializzare il generatore di numeri casuali con un seed in base al timer di sistema.
Per produrre numeri interi casuali in un determinato intervallo, usare la formula seguente:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
In questo caso, inbound è il numero più alto nell'intervallo e lowerbound è il numero più basso nell'intervallo.
Nota: Per ripetere sequenze di numeri casuali, chiamare Rnd con un argomento negativo immediatamente prima di usare Randomize con un argomento numerico. L'uso di Randomize con lo stesso valore per num non ripete la sequenza precedente.
Esempio di query
Espressione |
Risultati |
SELECT ProductSales.ProductID, Rnd([Discount]) AS RandomNumbers FROM ProductSales; |
Restituisce l'ID prodotto insieme ai numeri casuali nella colonna Numeri Casuali. |
Esempio di VBA
Nota: Gli esempi seguenti illustrano l'uso di questa funzione in un modulo di Visual Basic, Applications Edition (VBA). Per altre informazioni sull'uso di VBA, selezionare Riferimenti per sviluppatori nell'elenco a discesa accanto a Cerca e immettere uno o più termini nella casella di ricerca.
Questo esempio usa la funzione Rnd per generare un valore intero casuale da 1 a 6.
Dim MyValue
' Generate random value between 1 and 6. MyValue = Int((6 * Rnd) + 1)