VBA On Error Exit Sub

Πίνακας περιεχομένων

Στο VBA, μπορείτε να προγραμματίσετε τον κωδικό σας στο Exit a Sub κάθε φορά που αντιμετωπίζεται σφάλμα. Για να το κάνετε αυτό, χρησιμοποιήστε Σφάλμα GoTo και Έξοδος Sub.

Το On Error Goto λέει στη VBA ότι όταν παρουσιαστεί σφάλμα στο "Μετάβαση σε" μια συγκεκριμένη ενότητα του κωδικού σας. Πρώην:

1 Στο Error GoTo ErrorHandler

Μέσα από αυτήν την ενότητα, μπορείτε στη συνέχεια να πείτε στο VBA να εξέλθει από το Sub για να εξέλθετε από τη δευτερεύουσα διαδικασία:

12 ErrorHandler:Έξοδος Sub

Διαβάστε παρακάτω, για να δείτε αυτές τις γραμμές κώδικα σε δράση…

Έξοδος από σφάλμα Sub on Error στο VBA

Σε αυτό το παράδειγμα, θα δημιουργήσουμε ένα σφάλμα διαιρώντας με το μηδέν:

1 i = 5 /0

Δείτε τον πλήρη κώδικα παρακάτω. Όταν το VBA διαβάσει το σφάλμα, θα "μεταβεί" στην ενότητα ErrorHandler του κώδικα και θα εξέλθει:

123456789101112131415 Sub TestError ()Dim i As IntegerΣτο Error GoTo ErrorHandleri = 5 /0«Κάνε κάτι με iMsgBox iΈξοδος SubErrorHandler:MsgBox "Εάν παρουσιαστεί σφάλμα, τότε βγείτε από το Sub"Έξοδος SubΤέλος υπο

Για να καθορίσετε το χειρισμό σφαλμάτων, πρέπει πρώτα να δηλώσετε Σφάλμα GoTo δήλωση. Θα πρέπει να δηλώνεται στην αρχή ενός Sub:

1 Στο Error GoTo ErrorHandler

Στη συνέχεια, πρέπει να δηλώσετε τον κωδικό χειρισμού σφάλματος. Συνήθως βρίσκεται στο τέλος του κώδικα:

123 ErrorHandler:MsgBox "Εάν παρουσιαστεί σφάλμα, τότε βγείτε από το Sub"Έξοδος Sub

Προσθέτουμε το "Exit Sub" πάνω από το ErrorHandler επειδή θέλουμε να εκτελέσουμε τον κωδικό ErrorHandler μόνο εάν υπάρχει σφάλμα.

12345 Έξοδος SubErrorHandler:MsgBox "Εάν παρουσιαστεί σφάλμα, τότε βγείτε από το Sub"Έξοδος SubΤέλος υπο

Εάν εκτελέσετε το Sub, θα εμφανιστεί σφάλμα λόγω διαίρεσης με μηδέν. Εκείνη τη στιγμή θα εκτελεστεί ο κωδικός χειρισμού σφάλματος. Εμφανίζεται το πλαίσιο μηνυμάτων και το Sub εξέρχεται.

Εικόνα 1. VBA On Error Exit Sub

Αν θέλετε να μάθετε πώς να τερματίζετε την εκτέλεση κώδικα σε VBA, κάντε κλικ σε αυτόν τον σύνδεσμο: VBA End

Εάν θέλετε να μάθετε πώς να εξέρχεστε από ένα δευτερεύον ή μια λειτουργία, κάντε κλικ σε αυτόν τον σύνδεσμο: VBA Exit Sub ή Function

Θα βοηθήσει στην ανάπτυξη του τόπου, μοιράζονται τη σελίδα με τους φίλους σας

wave wave wave wave wave