Astuce VBA : générer des nombres aléatoires


Voici le code à utiliser pour générer une valeur aléatoire entre 1 et 50 :

Sub aleatoire()

    'Initialiser le générateur de nombres aléatoires
    '=> Randomize : à ajouter avant d'utiliser Rnd pour obtenir des valeurs complètement aléatoires
    Randomize
    
    'Nombre aléatoire entier entre 1 et 50 :
    nombreAleatoire = Int(50 * Rnd) + 1
    
    MsgBox nombreAleatoire
    
End Sub

Pour obtenir par exemple une valeur entre 1 et 22, remplacez simplement 50 (dans le code ci-dessus) par 22.

Explications détaillées

Si vous ne comprenez pas vraiment à quoi sert Randomize ou que la formule Int(50 * Rnd) + 1 n'est pas claire pour vous, visionnez la vidéo suivante :