Introduction au nombre aléatoire VBA

Dans Excel, nous avons une fonction appelée RAND qui est utilisée pour générer les nombres aléatoires. Donc, comme nous avons la fonction RND dans VBA qui est utilisée pour générer des nombres aléatoires. La fonction RND génère des nombres supérieurs à 0 mais inférieurs à 1.

Syntaxe du nombre aléatoire dans Excel VBA

La syntaxe de la fonction Random Number Excel VBA est la suivante:

Nous pouvons voir dans la syntaxe de la fonction RND ci-dessus, nous ne pouvons utiliser qu'un seul numéro en entrée.

Nous donnons l'entrée dans la fonction RND de moins de 3 façons;

  1. Si nous donnons un nombre <0, alors il générera le même nombre chaque fois que nous exécuterons le code.
  2. Si nous donnons un nombre comme 0, alors il apparaîtra le numéro le plus récent qui a été généré.
  3. Si nous donnons un nombre> 0, alors il continuera à générer des nombres aléatoires différents. Mais ce sera dans l'ordre.

Comment utiliser la fonction de nombre aléatoire Excel?

Voyons les exemples de nombres aléatoires dans Excel VBA.

Vous pouvez télécharger ce modèle Excel de nombre aléatoire VBA ici - Modèle Excel de nombre aléatoire VBA

Exemple # 1 - Numéro aléatoire VBA

Étape 1: cela, nous pouvons l'appliquer directement à VBA. Pour cela, allez dans la fenêtre VBA et ouvrez un module à partir du menu Insertion comme indiqué ci-dessous.

Étape 2: Une fois que nous aurons fait cela, nous aurons une fenêtre de module en VBA. Dans ce module, écrivez la sous-catégorie du numéro aléatoire VBA dans le même nom ou dans n'importe quel nom selon votre choix.

Code:

 Sub RandomNumber () End Sub 

Étape 3: Maintenant, choisissez un mot ou un alphabet et définissez-le comme variable et affectez-lui Double . Ici, nous considérons la variable Dim A et la donnons à Double . Sélectionner double au lieu de Entier sera utile car nous verrons des valeurs décimales comprises entre 0 et 1.

Code:

 Sub RandomNumber () Dim A As Sub End Double 

Étape 4: Maintenant, nous allons utiliser la variable A que nous avons définie ci-dessus et nous allons lui affecter une fonction Rnd pour générer des nombres aléatoires comme indiqué ci-dessous.

Code:

 Sub RandomNumber () Dim A As Double A = Rnd (End Sub 

Étape 5: Comme nous pouvons le voir dans la capture d'écran ci-dessus, la fonction RND a la syntaxe comme numéro et ce sera un numéro à un chiffre. Ici, nous verrons comment donner un nombre inférieur à 0 va générer quoi? Donc, entre parenthèses de la fonction RND, insérez -1 qui est le nombre le plus récent inférieur à 0.

Code:

 Sub RandomNumber () Dim A As Double A = Rnd (-1) End Sub 

Étape 6: Enfin, pour obtenir la sortie, nous avons besoin de la référence de la cellule ou d'une boîte de message où elle reflétera le nombre aléatoire. Insérez la commande Msgbox de la boîte de message et affectez la variable définie ici.

Code:

 Sub RandomNumber () Dim A As Double A = Rnd (-1) MsgBox A End Sub 

Étape 7: Maintenant, nous pouvons compiler le code et l'exécuter en cliquant sur le bouton de lecture sous la barre de menu. Nous verrons le premier nombre aléatoire généré qui est inférieur à 0 qui est 0, 2240070104599 comme indiqué ci-dessous.

Si nous exécutons à nouveau le code, il continuera à générer le même code encore et encore.

Exemple # 2 - Numéro aléatoire VBA

Nous avons vu comment générer des nombres aléatoires inférieurs à 0. Il existe un autre moyen d'obtenir des nombres aléatoires. Dans cet exemple, nous allons générer le nombre aléatoire en donnant 0 comme entrée à la fonction RND .

Pour cela, nous utiliserons le même code que celui utilisé dans l'exemple-1.

Étape 1: Maintenant à la place de -1 qui est entre les crochets de la fonction RND, mettez 0.

Code:

 Sub RandomNumber () Dim A As Double A = Rnd (0) MsgBox A End Sub 

Étape 2: Nous pouvons compiler le code, si nécessaire ou bien l'exécuter directement en appuyant sur la touche F5 (touche de raccourci) pour exécuter le code. Nous pouvons voir que la fonction RND a généré le même nombre qui a été généré lorsque nous avons donné une entrée inférieure à 0. Ce qui signifie que si nous donnons 0 comme fonction RND d'entrée, elle générera le nombre généré précédemment.

Et si nous exécutons à nouveau le code, il continuera à donner le même nombre aléatoire.

Exemple # 3 - Numéro aléatoire VBA

Dans cet exemple, nous verrons ce qui se passera si nous donnons une valeur supérieure à 0. Nous pouvons choisir d'écrire du nouveau code ou nous pouvons apporter les modifications dans le code que nous avons écrit ci-dessus. Considérons le code que nous avons vu ci-dessus.

Étape 1: Comme nous devons tester un nombre supérieur à 0, utilisez la fonction RND vide et ajoutez +1 pour les valeurs supérieures à 1, comme indiqué ci-dessous.

Code:

 Sub RandomNumber () Dim A As Double A = 1 + Rnd () MsgBox A End Sub 

Étape 2: compilez le code si vous le souhaitez, puis exécutez le code. Nous verrons que le nombre aléatoire généré est différent de celui qui a été généré plus tôt. Ci-dessous, la capture d'écran, qui montre que le nombre aléatoire est dans la fraction de 1, 035… 0, 41 . Ce qui est supérieur à 0.

Si nous exécutons à nouveau le même code, nous continuerons à obtenir des nombres aléatoires différents. Nous avons donc obtenu juste après avoir exécuté à nouveau le code. Cette fois, les nombres aléatoires que nous avons obtenus sont la valeur de la double infraction par rapport au nombre aléatoire généré précédemment.

Avantages du nombre aléatoire VBA

  1. Cela semble difficile mais c'est facile à appliquer.
  2. Ceci est très utile lorsque nous travaillons sur la génération aléatoire de numéros de ticket.
  3. Le processus illustré dans l'exemple-3 peut être mis en œuvre de différentes manières.

Choses dont il faut se rappeler

  • Cela peut être implémenté dans la fonction MS Excel également avec le nom de fonction RAND.
  • Nous testons l'exemple-2 avant d'exécuter le code de l'exemple-2. Parce qu'il montrera en fait quel était le nombre généré précédemment.
  • Tester la fonction RND en laissant les parenthèses vides nous donnera également un nombre aléatoire.
  • Si nous affectons la variable en tant qu'entier, nous n'obtiendrons que des nombres entiers qui seront les mêmes que si 0 ou 1.
  • Si nous utilisons des nombres à deux chiffres comme entrée dans la fonction RND, cela générera également le nombre aléatoire.

Articles recommandés

Ceci est un guide du nombre aléatoire VBA. Ici, nous discutons de la façon de générer un nombre aléatoire dans VBA Excel à l'aide de la fonction RND ainsi que des exemples pratiques et un modèle Excel téléchargeable. Vous pouvez également consulter nos autres articles suggérés -

  1. VBA InStr expliqué avec des exemples
  2. Type de données entier VBA
  3. Comment sélectionner une cellule en utilisant le code VBA?
  4. Transposer une plage en VBA

Catégorie: