Επιλογή VBA ρητή

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

Χρήση μεταβλητών VBA χωρίς ρητή επιλογή

Θα δείξουμε πρώτα το παράδειγμα του κώδικα όταν δεν υπάρχει εντολή Option Explicit. Εδώ είναι ο κωδικός:

123456789 Ιδιωτικό Παράδειγμα WOOptionExplicit ()Dim strTextA As StringstrTextA = "Δοκιμή VBA χωρίς ρητή επιλογή"MsgBox strTextAΤέλος υπο

Στο παράδειγμα, δηλώσαμε τη μεταβλητή strTextA στην πρώτη σειρά της διαδικασίας και της εκχωρήσαμε το κείμενο. Μετά από αυτό, θέλουμε να επιστρέψουμε το πλαίσιο μηνυμάτων με την τιμή του strTextAΤο Εδώ είναι το αποτέλεσμα κατά την εκτέλεση του κώδικα:

Εικόνα 1. Ο κώδικας χωρίς ρητή επιλογή

Όπως μπορείτε να δείτε στην εικόνα 1, ο κώδικας εκτελείται με επιτυχία. Το πλαίσιο μηνυμάτων με την τιμή από strTextA εμφανίστηκε, παρόλο που δεν δηλώσαμε μεταβλητή strTextAΤο Εδώ δεν υπάρχει πρόβλημα με τον κώδικα, αλλά τι γίνεται αν είχαμε γράψει λάθος το όνομα της μεταβλητής:

1 MsgBox strTxtA

Εδώ γράψαμε strTxtA (χωρίς "e") αντί για strTextA. Ως αποτέλεσμα, λαμβάνουμε ένα κενό πλαίσιο μηνυμάτων, επειδή η μεταβλητή strTxtA δεν ορίστηκε. Τώρα θα δούμε πώς να χρησιμοποιήσετε το Option Explicit για την αποφυγή σφαλμάτων.

Χρήση των μεταβλητών με ρητή επιλογή

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

1 Επιλογή ρητή

Ακολουθεί ο πλήρης κώδικας, συμπεριλαμβανομένου του τυπογραφικού λάθους:

12345678910 Επιλογή ρητήΙδιωτικό Υπο ΠαράδειγμαWithOptionExplicit ()Dim strTextA As StringstrTextA = "Δοκιμή VBA χωρίς ρητή επιλογή"MsgBox strTxtAΤέλος υπο

Ας δούμε τι θα συμβεί αν εκτελέσουμε τον κώδικα:

Εικόνα 2. Ο κώδικας με ρητή επιλογή

Ως αποτέλεσμα, λαμβάνουμε το σφάλμα "Η μεταβλητή δεν ορίζεται", επειδή δεν το δηλώσαμεstrTxtA μεταβλητός.

Η προσθήκη ρητής επιλογής στο επάνω μέρος των ενοτήτων κώδικα βοηθά στην αποφυγή λαθών από ανορθόγραφες μεταβλητές.

Εάν θέλετε να μάθετε περισσότερα σχετικά με τις άλλες επιλογές VBA VBA, μάθετε πώς να κάνετε το VBA να μην κάνει διάκριση πεζών-κεφαλαίων: Αποτρέψτε το VBA Case Sensitive

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

wave wave wave wave wave