Σπίτι Κοινωνική Media Πώς να χρησιμοποιήσετε τη δήλωση OnError στο Excel 2016 VBA - dummies

Πώς να χρησιμοποιήσετε τη δήλωση OnError στο Excel 2016 VBA - dummies

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

Βίντεο: Week 8, continued 2024

Βίντεο: Week 8, continued 2024
Anonim

Όταν πρέπει να αντιμετωπίσετε σφάλματα στο Excel VBA, μπορείτε να χρησιμοποιήσετε την εντολή OnError. Ωστόσο, υπάρχουν μερικά πράγματα που πρέπει να γνωρίζετε πρώτα. Μπορείτε να χρησιμοποιήσετε την εντολή On Error με τρεις τρόπους.

Σύνταξη Τι κάνει
Σφάλμα GoTo ετικέτα Μετά την εκτέλεση αυτής της δήλωσης, η VBA συνεχίζει την εκτέλεση με τη δήλωση

Πρέπει να συμπεριλάβετε μια παύλα

μετά την ετικέτα έτσι ώστε η VBA να την αναγνωρίζει ως ετικέτα.

Σφάλμα GoTo 0 Μετά την εκτέλεση αυτής της δήλωσης, η VBA συνεχίζει την κανονική συμπεριφορά ελέγχου σφαλμάτων

. Χρησιμοποιήστε αυτήν τη δήλωση αφού χρησιμοποιήσετε μία από τις

άλλες δηλώσεις On Error ή όταν θέλετε να καταργήσετε το χειρισμό σφαλμάτων

στη διαδικασία σας.

Κατά τη συνέχιση του σφάλματος Επόμενο Μετά την εκτέλεση αυτής της δήλωσης, η VBA απλώς αγνοεί όλα τα σφάλματα

και συνεχίζει την εκτέλεση με την επόμενη δήλωση.

Συνέχιση μετά από σφάλμα

Σε ορισμένες περιπτώσεις, απλά θέλετε η ρουτίνα να τελειώσει με χαρά όταν εμφανιστεί ένα σφάλμα. Για παράδειγμα, μπορείτε να εμφανίσετε ένα μήνυμα που περιγράφει το σφάλμα και στη συνέχεια να τερματίσετε τη διαδικασία. (Το παράδειγμα EnterSquareRoot5 που φαίνεται νωρίτερα χρησιμοποιεί αυτή την τεχνική.) Σε άλλες περιπτώσεις, θέλετε να ανακτήσετε από το σφάλμα, αν είναι δυνατόν.

Για να ανακτήσετε ένα σφάλμα, πρέπει να χρησιμοποιήσετε μια δήλωση Resume. Αυτό καθαρίζει τη συνθήκη σφάλματος και σας επιτρέπει να συνεχίσετε την εκτέλεση σε κάποια θέση. Μπορείτε να χρησιμοποιήσετε τη δήλωση Resume με τρεις τρόπους.

Σύνταξη Τι κάνει
Συνέχεια Η εκτέλεση συνεχίζεται με τη δήλωση που προκάλεσε το σφάλμα. Χρησιμοποιήστε το

αν ο κώδικας αντιμετώπισης σφαλμάτων διορθώνει το πρόβλημα και

είναι εντάξει για να συνεχίσετε.

Συνέχιση Επόμενη Η εκτέλεση συνεχίζεται με τη δήλωση αμέσως μετά τη δήλωση

που προκάλεσε το σφάλμα. Αυτό ουσιαστικά αγνοεί το σφάλμα

.

Επανάληψη ετικέτα Η εκτέλεση συνεχίζεται στην ετικέτα που καθορίζετε.
Sub EnterSquareRoot6 () Dim Num As Variant Dim Msg As String Dim Αντίστροφη ως TryAgain: 'Ρύθμιση χειρισμού σφαλμάτων On Error GoTo BadEntry 'Προτροπή για μια τιμή Num = InputBox ("Εισάγετε μια τιμή") Αν Num = "" Στη συνέχεια Exit Sub' Εισάγετε την τετραγωνική ρίζα ActiveCell. Τιμή = Sqr (Num) Έξοδος Υπο BadEntry: Msg = Err. Αριθμός & ":" & Σφάλμα (Err.) Msg = Msg & vbNewLine & vbNewLine Msg = Msg & " εισάγετε μια μη αρνητική τιμή. "Msg = Msg & vbNewLine & vbNewLine &" Δοκιμάστε ξανά; "Ans = MsgBox (Msg, vbYesNo + vbCritical) Αν Ans = vbYes Στη συνέχεια επαναλάβετε το TryAgain End Sub

Αυτή η διαδικασία έχει άλλη ετικέτα: TryAgain.Εάν παρουσιαστεί σφάλμα, η εκτέλεση συνεχίζεται στην ετικέτα BadEntry και ο κώδικας εμφανίζει το παρακάτω μήνυμα. Αν ο χρήστης απαντήσει κάνοντας κλικ στο κουμπί Ναι, η εντολή Resume ξεκινά και η εκτέλεση μεταβαίνει ξανά στην ετικέτα TryAgain. Εάν ο χρήστης κάνει κλικ Όχι, η διαδικασία λήγει.

Εάν παρουσιαστεί σφάλμα, ο χρήστης μπορεί να αποφασίσει αν θα προσπαθήσει ξανά.

Παρατηρήστε ότι το μήνυμα σφάλματος περιλαμβάνει επίσης τον αριθμό σφάλματος μαζί με την "επίσημη" περιγραφή σφάλματος.

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

Εάν Ans = vbYes Στη συνέχεια GoTo TryAgain

Ο κώδικας δεν λειτουργεί σωστά αν χρησιμοποιείτε GoTo αντί Resume. Για να αποδείξετε, εισαγάγετε έναν αρνητικό αριθμό. Παίρνετε την ερώτηση σφάλματος. Κάντε κλικ στο κουμπί Ναι για να δοκιμάσετε ξανά και, στη συνέχεια, πληκτρολογήστε

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

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

Αρχίζει αμέσως μετά την ετικέτα που καθορίζεται στην εντολή On Error.

  • Θα πρέπει να προσεγγιστεί από τη μακροεντολή σας μόνο σε περίπτωση εμφάνισης σφάλματος. Αυτό σημαίνει ότι πρέπει να χρησιμοποιήσετε μια δήλωση όπως Exit Sub ή Exit Function αμέσως πριν την ετικέτα.

  • Ίσως χρειαστεί μια δήλωση Resume. Εάν επιλέξετε να μην ακυρωθεί η διαδικασία όταν παρουσιαστεί σφάλμα, πρέπει να εκτελέσετε μια δήλωση Resume πριν επιστρέψετε στον κύριο κώδικα.

  • Γνωρίζοντας πότε να αγνοήσετε τα σφάλματα

Σε ορισμένες περιπτώσεις, είναι απολύτως εντάξει να αγνοήσετε τα σφάλματα. Αυτό συμβαίνει όταν αρχίζει να παίζει η εντολή "Συνέχιση σφάλματος".

Το ακόλουθο παράδειγμα βγάζει από κάθε κελί στην επιλεγμένη περιοχή και μετατρέπει την τιμή στην τετραγωνική ρίζα της. Αυτή η διαδικασία δημιουργεί ένα μήνυμα σφάλματος αν οποιοδήποτε κελί στην επιλογή περιέχει έναν αρνητικό αριθμό ή κείμενο:

Sub SelectionSqrt () Dim κυψέλη As Range If TypeName (Επιλογή) <> "range" Στη συνέχεια Exit Sub Για κάθε κελί στην επιλογή Cell. Value = Sqr (τιμή κυψέλης) Επόμενο κελί End Sub

Σε αυτή την περίπτωση, ίσως θέλετε να παραλείψετε απλά οποιοδήποτε κύτταρο που περιέχει μια τιμή που δεν μπορείτε να μετατρέψετε σε τετραγωνική ρίζα. Μπορείτε να δημιουργήσετε όλα τα είδη των δυνατοτήτων ελέγχου σφαλμάτων χρησιμοποιώντας τις δομές If-Then, αλλά μπορείτε να δημιουργήσετε μια καλύτερη (και απλούστερη) λύση απλά αγνοώντας τα σφάλματα που συμβαίνουν.

Η ακόλουθη ρουτίνα το επιτυγχάνει χρησιμοποιώντας την εντολή On Error Resume Next:

Sub SelectionSqrt () Dim κυψέλη ως εμβέλεια εάν TypeName (Επιλογή) <> "range" Στη συνέχεια Exit Sub On Σφάλμα Συνέχεια Επόμενο Για κάθε κελί στην επιλογή κύτταρο. Value = Sqr (τιμή κυψέλης) Επόμενο κελί End Sub

Γενικά, μπορείτε να χρησιμοποιήσετε μια παράμετρο On Error Resume Next εάν θεωρήσετε ότι τα σφάλματα είναι αβλαβή ή δεν έχουν σημασία για την εργασία σας.
Πώς να χρησιμοποιήσετε τη δήλωση OnError στο Excel 2016 VBA - dummies

Η επιλογή των συντακτών

Πώς να γράψετε αποτελεσματικές καμπάνιες ηλεκτρονικού ταχυδρομείου - Dummies

Πώς να γράψετε αποτελεσματικές καμπάνιες ηλεκτρονικού ταχυδρομείου - Dummies

Τέχνη - και μια επιστήμη. Χιλιάδες άρθρα έχουν γραφτεί μόνο για τη σύνταξη γραμμών θέματος ηλεκτρονικού ταχυδρομείου. Και πάνω από αυτό, αυτό που γράφετε για ενημερωτικό ενημερωτικό δελτίο θα είναι πολύ διαφορετικό από το εάν γράφετε ενημερωτικά δελτία για την πώληση πράγματα. Πρέπει να δοκιμάσετε ένα ...

Πώς μπορεί να εμπλακεί η επιχείρησή σας με τα Social Media - ανδρείκελα

Πώς μπορεί να εμπλακεί η επιχείρησή σας με τα Social Media - ανδρείκελα

. Στην αφοσίωση των κοινωνικών μέσων (ΜΜΕ), η εταιρεία ή ο οργανισμός σας μπορεί να είναι ένας από τους συμμετέχοντες. "Αλλά μια εταιρεία δεν είναι ένα άτομο", μπορείτε να πείτε. Αληθής. Ως εκ τούτου, η πρόκλησή σας είναι να κάνετε την εταιρεία σας - μια εταιρική οντότητα ή το εμπορικό σήμα που την αντιπροσωπεύει - πιο ανθρώπινη ...

Πώς να χρησιμοποιήσετε τις ρυθμίσεις WordPress για το Blog σας - ανδρείκελα

Πώς να χρησιμοποιήσετε τις ρυθμίσεις WordPress για το Blog σας - ανδρείκελα

Μπορείτε να συνδεθείτε στο λογαριασμό διαχειριστή του WordPress και να ρίξετε μια ματιά. Το λογισμικό WordPress κάνει πολύ σωστά από το κουτί για να κάνει τη ζωή σας στον blogging όσο το δυνατόν πιο απλή. Πώς να συνδεθείτε στο ιστολόγιό σας Για να μπορέσετε να ξεκινήσετε την ανάρτηση, μπορείτε ...

Η επιλογή των συντακτών

Προειδοποιήσεις για χρήστες Big Data Cloud - ανδρείκελα

Προειδοποιήσεις για χρήστες Big Data Cloud - ανδρείκελα

Προειδοποίηση! Οι υπηρεσίες που βασίζονται σε σύννεφο μπορούν να σας δώσουν μια οικονομική λύση στις μεγάλες ανάγκες σας για δεδομένα, αλλά το σύννεφο έχει τα προβλήματά του. Είναι σημαντικό να κάνετε την εργασία σας πριν μετακινήσετε τα μεγάλα δεδομένα σας εκεί. Ακολουθούν ορισμένα θέματα που πρέπει να λάβετε υπόψη: Ακεραιότητα δεδομένων: Πρέπει να βεβαιωθείτε ότι ο πάροχός σας έχει τους σωστούς ελέγχους που υπάρχουν για να εξασφαλίσετε ...

Προβολή Εξωτερικών Δεδομένων από Προοπτική Χρήστη - Dummies

Προβολή Εξωτερικών Δεδομένων από Προοπτική Χρήστη - Dummies

Εδώ περιγράφεται ο τρόπος με τον οποίο ένας χρήστης αποθήκης δεδομένων βλέπει εξωτερικά δεδομένα και τη σημασία της. Εξετάστε αυτούς τους δύο πίνακες. Αυτός ο πίνακας παρουσιάζει την απόδοση των πωλήσεων για την εταιρεία Good Guys, Inc. και στον παρακάτω πίνακα παρουσιάζονται οι επιδόσεις πωλήσεων των ανταγωνιστικών εταιρειών Bad Guys, Inc. Αποτελέσματα Αποτελεσμάτων Πωλήσεων 2007 Q1 Αποτελέσματα 2008 Q1 ...

Ποια λειτουργία παρέχει ένα εργαλείο ερωτήσεων και αναφοράς; - ανδρείκελα

Ποια λειτουργία παρέχει ένα εργαλείο ερωτήσεων και αναφοράς; - ανδρείκελα

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

Η επιλογή των συντακτών

Πώς να χρησιμοποιήσετε τα επιχειρήματα για να βελτιώσετε τη σχέση σας - Dummies

Πώς να χρησιμοποιήσετε τα επιχειρήματα για να βελτιώσετε τη σχέση σας - Dummies

Στο χέρι με αγάπη και αγάπη. Αλλά με την τεχνική Make-A-Deal του Dr. Kate, μπορείτε να διευθετήσετε τις διαφωνίες και να πλησιάσετε στη διαδικασία. Ακολουθήστε τα εξής βήματα: Κάντε μια ημερομηνία για να μιλήσετε για το πρόβλημα, επιλέγοντας τον βέλτιστο χρόνο και τόπο. Κάντε ερωτήσεις σχετικά με τις σκέψεις και τα συναισθήματα του συντρόφου σας ...

Πώς να φλερτάρουν να δείχνουν ενδιαφέρον για κάποιον - ανδρείκελα

Πώς να φλερτάρουν να δείχνουν ενδιαφέρον για κάποιον - ανδρείκελα

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

Δημιουργία Συνδεδεμένων Συνδέσεων μέσω Φίλων - Dummies

Δημιουργία Συνδεδεμένων Συνδέσεων μέσω Φίλων - Dummies

Copyright © 2014 AARP. Ολα τα δικαιώματα διατηρούνται. Αν δεχτείτε την πρόταση ότι οι δελεαστικοί και εξαιρετικοί άνθρωποι άνω των 50 ετών επανεισάγουν τον κόσμο που χρονολογείται όπως ακριβώς είστε, τότε το επόμενο πράγμα που πρέπει να λύσετε είναι το πού θα τα βρείτε. Ευτυχώς, έχετε διάφορες διαδρομές για να ταξιδέψετε, μερικές ή όλες από τις οποίες ...