Renvoie une donnée de type Single contenant un nombre aléatoire.
Syntaxe
Rnd[(number)]
Le nombre facultatifargument est un single ou tout expression numérique valide.
Valeurs de retour
Si number est |
Rnd génère |
Inférieur à zéro |
Le même nombre à chaque fois, en utilisant le nombre comme valeur de départ. |
Supérieur à zéro |
Nombre aléatoire suivant dans la séquence. |
Égal à zéro |
Nombre généré le plus récemment. |
Non fourni |
Nombre aléatoire suivant dans la séquence. |
Notes
La fonction Rnd retourne une valeur inférieure à 1, mais supérieure ou égale à zéro.
La valeur de number détermine la façon dont Rnd génère un nombre aléatoire :
Pour une valeur initiale donnée, la même séquence de nombres est générée, car chaque appel successif à la fonction Rnd utilise le nombre précédent comme valeur initiale pour le numéro suivant dans la séquence.
Avant d’appeler Rnd, utilisez l’instruction Randomize sans argument pour initialiser le générateur de nombres aléatoires avec une valeur initiale basée sur le minuteur système.
Pour produire des entiers aléatoires dans une plage donnée, utilisez la formule suivante :
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
Ici, upperbound est le nombre le plus élevé dans la plage, et lowerbound est le nombre le plus bas dans la plage.
Remarque : Pour répéter des séquences de nombres aléatoires, appelez Rnd avec un argument négatif immédiatement avant d’utiliser Random avec un argument numérique. L’utilisation de Random avec la même valeur pour number ne répète pas la séquence précédente.
Exemple de requête
Expression |
Résultats |
SELECT ProductSales.ProductID, Rnd([Discount]) AS RandomNumbers FROM ProductSales ; |
Retourne l’ID de produit ainsi que les nombres aléatoires dans la colonne RandomNumbers. |
Exemple VBA
Remarque : Les exemples suivants illustrent l’utilisation de cette fonction dans un module Visual Basic pour Applications (VBA). Pour plus d’informations sur l’utilisation de VBA, sélectionnez Référence du développeur dans la liste déroulante en regard de Rechercher et entrez un ou plusieurs termes dans la zone de recherche.
Cet exemple utilise la fonction Rnd pour générer une valeur entière aléatoire comprise entre 1 et 6.
Dim MyValue
' Generate random value between 1 and 6. MyValue = Int((6 * Rnd) + 1)