VBA en cas d'erreur Exit Sub

En VBA, vous pouvez programmer votre code pour quitter un sous-marin chaque fois qu'une erreur est rencontrée. Pour ce faire, utilisez En cas d'erreur GoTo et Quitter le sous.

En cas d'erreur, Goto indique à VBA que lorsqu'une erreur est rencontrée, "Aller à" une section spécifique de votre code. Ex:

1 En cas d'erreur GoTo ErrorHandler

À partir de cette section, vous pouvez ensuite dire à VBA de quitter le sous-programme pour quitter la sous-procédure :

12 Gestionnaire d'erreur :Quitter le sous

Continuez à lire pour voir ces lignes de code en action…

Quitter un sous-marin en cas d'erreur dans VBA

Dans cet exemple, nous allons générer une erreur en divisant par zéro :

1 je = 5 / 0

Voir le code complet ci-dessous. Lorsque VBA lit l'erreur, il « accède » à la section du code ErrorHandler et quitte :

123456789101112131415 Sous-TestError ()Diminuer en tant qu'entierEn cas d'erreur GoTo ErrorHandlerje = 5 / 0'Faire quelque chose avec moiMsgBox jeQuitter le sousGestionnaire d'erreur :MsgBox "Si erreur, quittez le Sub"Quitter le sousFin du sous-marin

Pour spécifier la gestion des erreurs, vous devez d'abord déclarer En cas d'erreur GoTo déclaration. Il doit être déclaré au début d'un Sub :

1 En cas d'erreur GoTo ErrorHandler

Après cela, vous devez déclarer le code de gestion des erreurs. C'est généralement à la fin du code:

123 Gestionnaire d'erreur :MsgBox "Si erreur, quittez le Sub"Quitter le sous

Nous ajoutons le "Exit Sub" au-dessus du ErrorHandler car nous voulons uniquement exécuter le code ErrorHandler s'il y a une erreur.

12345 Quitter le sousGestionnaire d'erreur :MsgBox "Si erreur, quittez le Sub"Quitter le sousFin du sous-marin

Si vous exécutez le Sub, une erreur se produira à cause de la division par zéro. À ce moment, le code de gestion des erreurs sera exécuté. La boîte de message apparaît et le Sub est quitté.

Image 1. VBA en cas d'erreur Exit Sub

Si vous voulez savoir comment mettre fin à l'exécution de code en VBA, cliquez sur ce lien : VBA End

Si vous voulez savoir comment quitter un sous ou une fonction, cliquez sur ce lien : VBA Exit Sub or Function

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave