Pause Excel VBA pour boucle

VBA Break est utilisé lorsque nous voulons quitter ou rompre la boucle continue qui a certains critères fixes. La boucle for est dans la plage de portée définit les instructions qui sont exécutées à plusieurs reprises pendant un nombre fixe de fois. Parfois, lorsque nous utilisons une condition de boucle dans VBA, il arrive souvent que le code continue de fonctionner sans fin ni interruption. Pour éviter ce genre de situations, il est recommandé d'utiliser des ruptures ou des fonctions de sortie par lesquelles nous pouvons sortir de la boucle avec la sortie mesurable de la macro.

Comment utiliser Excel VBA Break For Loop?

Nous apprendrons à utiliser un VBA Break for Loop avec quelques exemples dans Excel.

Vous pouvez télécharger ce modèle VBA Break For Loop Excel ici - Modèle VBA Break For Loop Excel

Exemple # 1 - Coupure VBA pour boucle

Nous verrons un exemple où lors de l'utilisation de la boucle For, les critères d'arrangement ne seront pas rompus. Mais pour résoudre ce problème, nous utiliserons la boucle If-End . Pour cela, nous avons besoin d'un module où nous allons écrire ce code.

Suivez les étapes ci-dessous pour utiliser Break for Loop dans Excel VBA.

Étape 1: Ouvrez un nouveau module, allez dans la fenêtre VBA et sélectionnez Module dans l'option de menu Insérer.

Étape 2: Cela nous amènera à un nouveau module dans VBA. Maintenant, dans ce module, écrivez Subcategory au nom de VBA Break For Loop ou dans tout autre nom qui définit sa signification.

Code:

 Sub VBABreak1 () End Sub 

Étape 3: Définissez maintenant un DIM comme n'importe quel alphabet ou mot. Cela lui donne une identité. Ici, nous utilisons l'alphabet «A» ci-dessous.

Code:

 Sub VBABreak1 () Dim A End Sub 

Étape 4: Attribuez-le maintenant comme entier qui est utilisé pour les nombres uniquement comme indiqué ci-dessous.

Code:

 Sub VBABreak1 () Dim A As Integer End Sub 

Étape 5: Attribuez maintenant une valeur numérique à l'entier A. Disons que c'est 10 comme indiqué ci-dessous.

Code:

 Sub VBABreak1 () Dim A As Integer A = 10 End Sub 

Étape 6: Maintenant, lancez une boucle For et considérez toute valeur de départ de A. Il vaut mieux prendre cette valeur comme zéro. Cela devient facile pour le calcul.

Code:

 Sub VBABreak1 () Dim A As Integer A = 10 For A = 0 To A Step 2 End Sub 

Étape 7: Et pour imprimer la valeur stockée dans A, nous utiliserons une boîte de message qui récupérera sa valeur. Vous pouvez également utiliser n'importe quelle forme de phrase pour rendre la boîte de message plus significative, ce qui est facultatif. Nous l'avons utilisé comme indiqué ci-dessous.

Code:

 Sub VBABreak1 () Dim A As Integer A = 10 For A = 0 To A Step 2 MsgBox ("La valeur est A est:" & A) Next End Sub 

Étape 8: compilez maintenant le code étape par étape en utilisant la touche fonctionnelle F8 et ensuite exécutez le code en cliquant sur le bouton Lecture comme indiqué ci-dessous. Nous verrons que la sortie à chaque étape sera de 0 à 10 dans l'intervalle de pas de 2 comme indiqué ci-dessous.

Étape 9: Maintenant, fermez enfin For Loop et utilisez également Next à la fin. Le «Suivant» est utilisé lorsque nous utilisons des chiffres dans le code.

Code:

 Sub VBABreak1 () Dim A As Integer A = 10 For A = 0 To A Step 2 MsgBox ("La valeur est A est:" & A) Quitter pour Next End Sub 

Étape 10: Cela montre que la boucle n'est pas terminée et nous devons également remplir les critères de sortie pour quitter la boucle For. Et pour cela, nous utiliserons la condition de boucle If-End. Pensez donc à écrire une boucle If pour le même entier A. Choisissez ici la limite jusqu'à ce que vous souhaitiez exécuter la boucle. Nous l'avons considéré comme 4.

Code:

 Sub VBABreak1 () Dim A As Integer A = 10 For A = 0 To A Step 2 MsgBox ("La valeur est A est:" & A) Si A = 4 Alors sortie pour Next End Sub 

Étape 11: Ajoutons maintenant un critère supplémentaire dans lequel nous utiliserons le nombre de fois où il serait multiplié par un nombre. Disons que c'est 10. Vous pouvez choisir n'importe quel autre nombre au lieu de 10. Mais l'utilisation de 10 facilite la compréhension de la boucle de multiplication.

Code:

 Sub VBABreak1 () Dim A As Integer A = 10 For A = 0 To A Step 2 MsgBox ("La valeur est A est:" & A) Si A = 4 Alors A = A * 10 Quittez pour Next End Sub 

Étape 12: Utilisez à nouveau la boîte de message de nom comme nous l'avons utilisé pour la boucle For et fermez enfin l'instruction If Loop with End if comme indiqué ci-dessous.

Code:

 Sub VBABreak1 () Dim A As Integer A = 10 For A = 0 To A Step 2 MsgBox ("La valeur est A est:" & A) Si A = 4 Alors A = A * 10 MsgBox ("La valeur est A est : "& A) Quitter pour End If Next End Sub 

Étape 13: Compilez à nouveau le code et exécutez-le. For Loop commencera à afficher un message avec la valeur 0, suivi de 2, 4 et le terminera à 40. Ce qui signifie que For Loop s'est cassé à la 3ème itération et a pris la dernière valeur à 40.

Exemple # 2 - Coupure VBA pour boucle

Dans cet exemple, nous appliquerons la boucle For et verrons comment rompre la boucle une fois qu'elle satisfait aux critères.

Étape 1: Ouvrez un nouveau module à partir de l'option de menu Insérer et donnez-lui une sous-catégorie sous n'importe quel nom ou mieux de manière séquentielle, comme indiqué ci-dessous.

Code:

 Sub VBABreak2 () End Sub 

Étape 2: définissez maintenant un DIM A comme entier. L'utilisation d'Integer pour le test nous permet d'implémenter le code plus rapidement et de déboguer facilement.

Code:

 Sub VBABreak2 () Dim A As Integer End Sub 

Étape 3: Maintenant, lancez une boucle For pour un entier défini et donnez-lui une plage à partir de n'importe quel nombre de lignes à partir de 1. Nous avons choisi jusqu'à 20.

Code:

 Sub VBABreak2 () Dim A as Integer For A = 1 to 20 End Sub 

Étape 4: Donnez maintenant une plage ou un emplacement à partir duquel les numéros sont imprimés en séquence. Nous avons utilisé ThisWorkBook pour sélectionner le fichier ouvert actuel et les feuilles de calcul (1) pour sélectionner la première feuille d'un classeur ouvert, comme indiqué ci-dessous. Maintenant, pour fermer la boucle For, écrivez Next à la fin, comme indiqué ci-dessous.

Code:

 Sub VBABreak2 () Dim A as Integer For A = 1 to 20 ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Étape 5: exécutez le code ci-dessus manuellement ou à l'aide de la touche de raccourci F5. Nous pouvons voir que le code a donné un nombre de 1 à 20.

Étape 6: Maintenant, pour rompre la boucle entre 0 et 20, nous utiliserons la condition de boucle If-End if où nous donnerons les critères pour tomber comme indiqué ci-dessous.

Code:

 Sub VBABreak2 () Dim A as Integer For A = 1 to 20 If End If ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Étape 7: Maintenant, écrivez les critères, si A est supérieur à 9 (ou n'importe quel nombre mais inférieur à 20), puis quittez pour comme indiqué ci-dessous. Nous supposons que la boucle For devrait être rompue lorsque la boucle atteint 9.

Code:

 Sub VBABreak2 () Dim A as Integer For A = 1 to 20 If A> 9 Then Exit For End If ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Étape 8: compilez maintenant le code pour trouver l'erreur. Si aucune erreur n'a été trouvée, exécutez-la. Nous verrons pour les nombres entiers A de 1 à 20 ont été remplis jusqu'à ce que le code soit sorti ou cassé en position 9.

Avantages de VBA Break For Loop

  • Exit ou Break peut être utilisé non seulement pour la boucle For, mais aussi dans de nombreuses autres boucles telles que Do-While.
  • Ceci est le plus fréquemment utilisé parmi toutes les conditions de boucle disponibles dans VBA.
  • For Loop est assez facile et peut fonctionner même sans critère de sortie.

Choses dont il faut se rappeler

  • La boucle For peut fonctionner sans donner les critères de sortie. Cela peut fonctionner correctement jusqu'à ce que les critères sans sortie rompent la boucle.
  • Il est important de rompre toute boucle qui ne satisfait pas aux critères de sortie en utilisant Exit dans la boucle.
  • Après avoir écrit le code, enregistrez le fichier sous Macro Enable Excel afin que le code écrit soit conservé.

Articles recommandés

Cela a été un guide pour VBA Break For Loop. Ici, nous discutons de l'utilisation d'Excel VBA Break For Loop avec 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: