Μεταβλητές VBA, Τύποι Δεδομένων και Σταθερές στο Excel
⚡ Έξυπνη Σύνοψη
Οι μεταβλητές, οι τύποι δεδομένων και οι σταθερές VBA στο Excel αποθηκεύουν και επισημαίνουν τις τιμές με τις οποίες λειτουργεί ένα πρόγραμμα. Αυτή η σελίδα εξηγεί τους κανόνες ονομασίας μεταβλητών, την έμμεση και ρητή δήλωση με το Dim, τους αριθμητικούς και μη αριθμητικούς τύπους δεδομένων και τον τρόπο δήλωσης μιας σταθεράς με το Const.

Οι μεταβλητές χρησιμοποιούνται σχεδόν σε όλα τα προγράμματα υπολογιστών και το VBA δεν διαφέρει. Είναι καλή πρακτική να δηλώνετε μια μεταβλητή στην αρχή της διαδικασίας. Δεν είναι απαραίτητο, αλλά βοηθά στον προσδιορισμό της φύσης του περιεχομένου (κείμενο, δεδομένα, αριθμοί κ.λπ.)
Μεταβλητές VBA
Οι μεταβλητές είναι συγκεκριμένες τιμές που αποθηκεύονται σε μια μνήμη υπολογιστή ή ένα σύστημα αποθήκευσης. Later, μπορείτε να χρησιμοποιήσετε αυτήν την τιμή στον κώδικα και να την εκτελέσετε. Ο υπολογιστής θα πάρει αυτήν την τιμή από το σύστημα και θα εμφανιστεί στην έξοδο. Σε καθέναν από τους τύπους μεταβλητών Excel VBA πρέπει να δοθεί ένα όνομα.
Για να ονομάσετε τη μεταβλητή στο VBA, πρέπει να ακολουθήσετε τους ακόλουθους κανόνες.
- Πρέπει να είναι λιγότερο από 255 χαρακτήρες
- Δεν επιτρέπεται η απόσταση
- Δεν πρέπει να ξεκινά με αριθμό
- Η περίοδος δεν επιτρέπεται
Ακολουθούν μερικά παραδείγματα για έγκυρα και μη έγκυρα ονόματα για μεταβλητές στο VBA.
| Το ρολόι μου | Το ρολόι μου |
| NewCar1 | 1_NewCar (δεν αρχίζει με αριθμό) |
| Ταυτότητα Υπαλλήλου | Ταυτότητα υπαλλήλου (Δεν επιτρέπεται η θέση) |
In VBA, πρέπει να δηλώσουμε τις μεταβλητές πριν τις χρησιμοποιήσουμε εκχωρώντας ονόματα και τύπο δεδομένων.
Στο VBA, οι μεταβλητές δηλώνονται είτε σιωπηρά είτε ρητά.
- σιωπηρά: Παρακάτω είναι ένα παράδειγμα μιας μεταβλητής που δηλώνεται Implicitly.
- ετικέτα=γκουρού99
- όγκος=4
- Ρητά: Παρακάτω είναι ένα παράδειγμα μεταβλητής που δηλώνεται ρητά. Μπορείτε να χρησιμοποιήσετε τη λέξη-κλειδί "Dim" στη σύνταξη
- Ήλιο Αριθμός ως ακέραιος αριθμός
- Ήλιο κωδικός πρόσβασης ως συμβολοσειρά
Η μεταβλητή VBA δεν διαφέρει από άλλες γλώσσες προγραμματισμού. Για να δηλώσετε μια μεταβλητή στο VBA χρησιμοποιείτε τη λέξη-κλειδί "Αμυδρός."
Σύνταξη για μεταβλητή VBA,
Για να δηλώσετε μια μεταβλητή στο VBA, πληκτρολογήστε Dim ακολουθούμενο από ένα όνομα:
Sub Exercise () Dim <name> End Sub
Πριν εκτελέσουμε τις μεταβλητές πρέπει να καταγράψουμε α μακροεντολή στο Excel. Για να εγγράψετε μια μακροεντολή κάντε τα εξής –
Βήμα 1): Καταγράψτε τη Μακροεντολή 1
Βήμα 2) : Διακοπή μακροεντολής 1
Βήμα 3): Ανοίξτε το πρόγραμμα επεξεργασίας Macro, εισαγάγετε τον κωδικό για τη μεταβλητή στο Macro1
Βήμα 4): Εκτελέστε τον κώδικα για το Macro 1
Παράδειγμα, για VBA Variable
Sub Macro1() Dim Num As Integer Num = 99 MsgBox " Guru " & Num End Sub
Όταν εκτελείτε αυτόν τον κωδικό, θα λάβετε την ακόλουθη έξοδο στο φύλλο σας.
Τύποι δεδομένων Excel VBA
Ο υπολογιστής δεν μπορεί να κάνει διαφοροποίηση μεταξύ των αριθμών (1,2,3..) και των συμβολοσειρών (a,b,c,..). Για να κάνουμε αυτή τη διαφοροποίηση, χρησιμοποιούμε Τύπους δεδομένων.
Οι τύποι δεδομένων VBA μπορούν να διαχωριστούν σε δύο τύπους
- Αριθμητικοί τύποι δεδομένων
| Χαρακτηριστικά | Αποθηκευτικός χώρος | Εύρος τιμών |
|---|---|---|
| Ψηφιόλεξη | 1 byte | από 0 έως 255 |
| Ακέραιος αριθμός | 2 bytes | -32,768 να 32,767 |
| Μακριά | 4 bytes | -2,147,483,648 να 2,147,483,648 |
| μονόκλινο | 4 bytes | -3.402823E+38 έως -1.401298E-45 για αρνητικές τιμές 1.401298E-45 έως 3.402823E+38 για θετικές τιμές. |
| Double | 8 bytes | -1.79769313486232e+308 έως -4.94065645841247E-324 για αρνητικές τιμές 4.94065645841247E-324 έως 1.79769313486232e+308 για θετικές τιμές. |
| Νόμισμα | 8 bytes | -922,337,203,685,477.5808 να 922,337,203,685,477.5807 |
| Δεκαδικός | 12 bytes | +/- 79,228,162,514,264,337,593,543,950,335 αν δεν χρησιμοποιείται δεκαδικό +/- 7.9228162514264337593543950335 (28 δεκαδικά ψηφία) |
- Μη αριθμητικοί τύποι δεδομένων
| Τύπος δεδομένων | Bytes που χρησιμοποιούνται | Εύρος τιμών |
|---|---|---|
| Χορδή (σταθερό μήκος) | Μήκος χορδής | 1 έως 65,400 χαρακτήρες |
| Συμβολοσειρά (μεταβλητό μήκος) | Μήκος + 10 byte | 0 έως 2 δισεκατομμύρια χαρακτήρες |
| Boolean | 2 bytes | Σωστό ή λάθος |
| Ημερομηνία | 8 bytes | 1 Ιανουαρίου 100 έως 31 Δεκεμβρίου 9999 |
| αντικείμενο | 4 bytes | Οποιοδήποτε ενσωματωμένο αντικείμενο |
| Παραλλαγή (αριθμητική) | 16 bytes | Οποιαδήποτε αξία τόσο μεγάλη όσο Double |
| Παραλλαγή (κείμενο) | Μήκος+22 byte | Το ίδιο με τη συμβολοσειρά μεταβλητού μήκους |
Στο VBA, εάν το ο τύπος δεδομένων δεν έχει καθοριστεί, θα δηλώσει αυτόματα τη μεταβλητή ως Παραλλαγή.
Ας δούμε ένα παράδειγμα, σχετικά με τον τρόπο δήλωσης μεταβλητών στο VBA. Σε αυτό το παράδειγμα, θα δηλώσουμε τρεις τύπους μεταβλητών string, ημερομηνία σύνδεσης και νόμισμα.
Βήμα 1) Όπως και στο προηγούμενο σεμινάριο, θα εισαγάγουμε την εντολήButton1 στο δικό μας Φύλλο Excel.
Βήμα 2) Στο επόμενο βήμα, κάντε δεξί κλικ στο κουμπί και επιλέξτε Προβολή κώδικα. Θα ανοίξει το παράθυρο κώδικα όπως φαίνεται παρακάτω.
Βήμα 3) Στο στάδιο αυτό,
- Αποθηκεύστε το αρχείο σας κάνοντας κλικ στο κουμπί αποθήκευση
- Στη συνέχεια, κάντε κλικ στο εικονίδιο του Excel
στο ίδιο παράθυρο για να επιστρέψετε το φύλλο Excel.
- Μπορείτε να δείτε ότι η λειτουργία σχεδίασης είναι «ενεργοποιημένη» με πράσινο χρώμα
Βήμα 4) Απενεργοποιήστε τη λειτουργία σχεδίασης, πριν κάνετε κλικ στο κουμπί εντολής
Βήμα 5) Αφού απενεργοποιήσετε τη λειτουργία σχεδίασης, θα κάνετε κλικ στο commandButton1. Θα εμφανίσει την ακόλουθη μεταβλητή ως έξοδο για το εύρος που δηλώσαμε στον κώδικα.
- Όνομα
- Ημερομηνία Εγγραφής
- Εισόδημα σε νομίσματα
Constant σε VBA
Το Constant είναι σαν μια μεταβλητή, αλλά δεν μπορείτε να την τροποποιήσετε. Για να δηλώσετε σταθερές VBA, μπορείτε να χρησιμοποιήσετε λέξη-κλειδί Const.
Υπάρχουν δύο τύποι σταθερών,
- Ενσωματωμένο ή εγγενές που παρέχεται από την εφαρμογή.
- Συμβολικό ή καθορισμένο από το χρήστη
Μπορείτε είτε να καθορίσετε το εύρος ως ιδιωτικός από προεπιλογή ή δημόσιο. Για παράδειγμα,
Δημόσιο Const DaysInYear=365
Εργάσιμες Ημέρες Ιδιωτικής Κόστος=250
Κατεβάστε το Excel που περιέχει τον παραπάνω κώδικα
Κατεβάστε το παραπάνω αρχείο Excel Code
Μεταβλητή Πεδίο εφαρμογής και Επιλογή Explicit
Το πού δηλώνεται μια μεταβλητή καθορίζει πού μπορεί να χρησιμοποιηθεί και μια μικρή ρύθμιση στην κορυφή μιας ενότητας αποτρέπει τις περισσότερες φορές.ping λάθη. Η κατανόηση και των δύο διατηρεί ένα αναπτυσσόμενο πρόγραμμα αξιόπιστο.
| Λέξη-κλειδί | Scope | Διάρκεια ζωής |
|---|---|---|
| Dim (μέσα σε ένα Sub) | Μόνο η διαδικασία στην οποία δηλώνεται | Επαναφορά κάθε φορά που εκτελείται η διαδικασία |
| Στατικός | Μόνο η διαδικασία, αλλά η τιμή διατηρείται | Απομνημονεύτηκε μεταξύ κλήσεων |
| Ιδιωτικό (στην κορυφή της ενότητας) | Κάθε διαδικασία σε αυτήν την ενότητα | Ζει όσο το βιβλίο εργασίας είναι ανοιχτό |
| Δημόσιο (στην κορυφή της ενότητας) | Κάθε ενότητα στο έργο | Ζει όσο το βιβλίο εργασίας είναι ανοιχτό |
💡 Συμβουλές: Χαρακτηριστικά Επιλογή ρητή ως την πρώτη γραμμή κάθε ενότητας. Αναγκάζει κάθε μεταβλητή να δηλωθεί με Dim, έτσι ώστε ένα όνομα με ορθογραφία να συλλαμβάνεται κατά τη διάρκεια της μεταγλώττισης αντί να δημιουργείται σιωπηλά μια νέα κενή μεταβλητή.






