VBA : Comment utiliser RandBetween pour générer des nombres aléatoires



Vous pouvez utiliser la méthode RandBetween dans VBA pour générer un entier aléatoire entre deux valeurs spécifiques.

Voici deux manières courantes d’utiliser cette méthode dans la pratique :

Méthode 1 : utilisez RandBetween pour générer un entier aléatoire

Sub GenerateRandomInteger()
Range("A1") = WorksheetFunction.RandBetween(1, 100)
End Sub

Cette macro particulière générera un entier aléatoire compris entre 1 et 100 dans la cellule A1 .

Méthode 2 : utilisez RandBetween pour générer plusieurs entiers aléatoires

Sub GenerateMultipleRandomIntegers()

    Dim i As Integer
    
    For i = 1 To 10
        Range("A" & i) = WorksheetFunction.RandBetween(1, 100)
    Next i
    
End Sub

Cette macro particulière générera un entier aléatoire compris entre 1 et 100 pour chaque cellule de la plage A1:A10 .

Les exemples suivants montrent comment utiliser chacune de ces méthodes dans la pratique.

Exemple 1 : utilisez RandBetween pour générer un entier aléatoire

Supposons que nous souhaitions générer un nombre aléatoire entre 1 et 100 et placer le résultat dans la cellule A1 de notre feuille actuelle dans Excel.

Nous pouvons créer la macro suivante pour ce faire :

Sub GenerateRandomInteger()
Range("A1") = WorksheetFunction.RandBetween(1, 100)
End Sub

Lorsque nous exécutons cette macro, nous recevons le résultat suivant :

Notez que la cellule A1 contient la valeur 36 .

Notez qu’à chaque fois que nous exécutons cette macro, une valeur entière différente entre 1 et 100 pourrait être générée.

Exemple 2 : utiliser RandBetween pour générer plusieurs entiers aléatoires

Supposons que nous souhaitions plutôt générer un entier aléatoire compris entre 1 et 100 pour chaque cellule de la plage A1:A10 .

Nous pouvons créer la macro suivante pour ce faire :

Sub GenerateMultipleRandomIntegers()

    Dim i As Integer
    
    For i = 1 To 10
        Range("A" & i) = WorksheetFunction.RandBetween(1, 100)
    Next i
    
End Sub

Lorsque nous exécutons cette macro, nous recevons le résultat suivant :

Notez que chaque cellule de la plage A1:A10 contient un entier aléatoire compris entre 1 et 100.

Remarque : Vous pouvez trouver la documentation complète de la méthode VBA RandBetween ici .

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :

VBA : Comment écrire des fonctions AVERAGEIF et AVERAGEIFS
VBA : Comment écrire des fonctions SUMIF et SUMIFS
VBA : Comment écrire les fonctions COUNTIF et COUNTIFS

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *