Οι μεταβλητές χρησιμοποιούνται σχεδόν σε όλα τα προγράμματα υπολογιστή και το VBA δεν διαφέρει. Είναι καλή πρακτική να δηλώνετε μια μεταβλητή στην αρχή της διαδικασίας. Δεν είναι απαραίτητο, αλλά βοηθά στον προσδιορισμό της φύσης του περιεχομένου (κείμενο, δεδομένα, αριθμοί κ.λπ.)
Σε αυτό το σεμινάριο VBA, θα μάθετε-
- Μεταβλητές VBA
- Τύποι δεδομένων VBA
- Σταθερή στο VBA
Μεταβλητές VBA
Οι μεταβλητές είναι συγκεκριμένες τιμές που αποθηκεύονται στη μνήμη του υπολογιστή ή στο σύστημα αποθήκευσης. Αργότερα, μπορείτε να χρησιμοποιήσετε αυτήν την τιμή σε κώδικα και να εκτελέσετε. Ο υπολογιστής θα πάρει αυτή την τιμή από το σύστημα και θα εμφανιστεί στην έξοδο. Κάθε τύπος μεταβλητής Excel VBA πρέπει να έχει ένα όνομα.
Για να ονομάσετε τη μεταβλητή στο VBA, πρέπει να ακολουθήσετε τους ακόλουθους κανόνες.
- Πρέπει να αποτελείται από λιγότερους από 255 χαρακτήρες
- Δεν επιτρέπεται η απόσταση
- Δεν πρέπει να ξεκινά με έναν αριθμό
- Η περίοδος δεν επιτρέπεται
Ακολουθούν ορισμένα παραδείγματα για έγκυρα και μη έγκυρα ονόματα για μεταβλητές στο VBA.
Το ρολόι μου |
Το ρολόι μου |
Νέο αυτοκίνητο1 |
1_NewCar (δεν ξεκινά με αριθμό) |
Ταυτότητα Υπαλλήλου |
Αναγνωριστικό υπαλλήλου (Δεν επιτρέπεται χώρος) |
Στο VBA, πρέπει να δηλώσουμε τις μεταβλητές πριν τις χρησιμοποιήσουμε εκχωρώντας ονόματα και τύπο δεδομένων.
Στο VBA, οι μεταβλητές δηλώνονται έμμεσα ή ρητά.
- Σιωπηρά : Ακολουθεί ένα παράδειγμα μεταβλητής που δηλώνεται έμμεσα.
- ετικέτα = γκουρού99
- όγκος = 4
- Ρητά : Ακολουθεί ένα παράδειγμα μεταβλητής που δηλώνεται ρητά. Μπορείτε να χρησιμοποιήσετε τη λέξη-κλειδί "Dim" στη σύνταξη
- Dim Num ως ακέραιος
- Αχνός κωδικός πρόσβασης ως συμβολοσειρά
Η μεταβλητή VBA δεν διαφέρει από άλλες γλώσσες προγραμματισμού. Για να δηλώσετε μια μεταβλητή στο VBA, χρησιμοποιείτε τη λέξη-κλειδί "Dim."
Σύνταξη για μεταβλητή VBA,
Για να δηλώσετε μια μεταβλητή σε VBA, πληκτρολογήστε Dim ακολουθούμενο από ένα όνομα:
Sub Exercise ()DimEnd Sub
Πριν εκτελέσουμε τις μεταβλητές πρέπει να καταγράψουμε μια μακροεντολή στο Excel. Για να εγγράψετε μια μακροεντολή κάντε τα εξής -
Βήμα 1) : Καταγράψτε τη μακροεντολή 1
Βήμα 2) : Διακοπή μακροεντολής 1
Βήμα 3) : Ανοίξτε το πρόγραμμα επεξεργασίας μακροεντολών, εισαγάγετε τον κωδικό για μεταβλητή στο Macro1
Βήμα 4): Εκτελέστε τον κωδικό για το Macro 1
Παράδειγμα, για μεταβλητή VBA
Sub Macro1()Dim Num As IntegerNum = 99MsgBox " Guru " & NumEnd Sub
Όταν εκτελείτε αυτόν τον κωδικό, θα λάβετε την ακόλουθη έξοδο στο φύλλο σας.
Τύποι δεδομένων Excel VBA
Ο υπολογιστής δεν μπορεί να κάνει διάκριση μεταξύ των αριθμών (1,2,3…) και των συμβολοσειρών (a, b, c,…). Για να κάνουμε αυτήν τη διαφοροποίηση, χρησιμοποιούμε τύπους δεδομένων.
Οι τύποι δεδομένων VBA μπορούν να διαχωριστούν σε δύο τύπους
- Αριθμητικοί τύποι δεδομένων
Τύπος | Αποθήκευση | Εύρος τιμών |
---|---|---|
Ψηφιόλεξη | 1 byte | 0 έως 255 |
Ακέραιος αριθμός | 2 byte | -32,768 έως 32,767 |
Μακρύς | 4 byte | -2.147.483.648 έως 2.147.483.648 |
Μονόκλινο | 4 byte | -3.402823E + 38 έως -1.401298E-45 για αρνητικές τιμές 1.401298E-45 έως 3.402823E + 38 για θετικές τιμές. |
Διπλό | 8 byte | -1.79769313486232e + 308 έως -4.94065645841247E-324 για αρνητικές τιμές 4.94065645841247E-324 έως 1.79769313486232e + 308 για θετικές τιμές. |
Νόμισμα | 8 byte | -922.337.203.685.477.5808 έως 922.337.203.685.477.5807 |
Δεκαδικός | 12 byte | +/- 79,228,162,514,264,337,593,543,950,335 εάν δεν χρησιμοποιείται δεκαδικό +/- 7,9228162514264337593543950335 (28 δεκαδικά ψηφία) |
- Μη αριθμητικοί τύποι δεδομένων
Τύπος δεδομένων | Χρησιμοποιούνται byte | Εύρος τιμών |
---|---|---|
Συμβολοσειρά (σταθερό μήκος) | Μήκος συμβολοσειράς | 1 έως 65.400 χαρακτήρες |
Συμβολοσειρά (μεταβλητό μήκος) | Μήκος + 10 byte | 0 έως 2 δισεκατομμύρια χαρακτήρες |
Boolean | 2 byte | Σωστό ή λάθος |
Ημερομηνία | 8 byte | 1 Ιανουαρίου 100 έως 31 Δεκεμβρίου 9999 |
Αντικείμενο | 4 byte | Οποιοδήποτε ενσωματωμένο αντικείμενο |
Παραλλαγή (αριθμητική) | 16 byte | Οποιαδήποτε τιμή τόσο μεγάλη όσο διπλή |
Παραλλαγή (κείμενο) | Μήκος + 22 byte | Ίδιο με συμβολοσειρά μεταβλητού μήκους |
Στο VBA, εάν ο τύπος δεδομένων δεν έχει καθοριστεί, θα δηλώσει αυτόματα τη μεταβλητή ως παραλλαγή.
Ας δούμε ένα παράδειγμα, σχετικά με τον τρόπο δήλωσης μεταβλητών στο VBA. Σε αυτό το παράδειγμα, θα δηλώσουμε τρεις τύπους συμβολοσειρών μεταβλητών, ημερομηνία σύνδεσης και νόμισμα.
Βήμα 1) Όπως, στο προηγούμενο σεμινάριο, θα εισαγάγουμε την εντολή Button1 στο φύλλο Excel.
Βήμα 2) Στο επόμενο βήμα, κάντε δεξί κλικ στο κουμπί και επιλέξτε Προβολή κώδικα. Θα ανοίξει το παράθυρο κώδικα όπως φαίνεται παρακάτω.
Βήμα 3) Σε αυτό το βήμα,
- Αποθηκεύστε το αρχείο σας κάνοντας κλικ στο κουμπί αποθήκευσης
- Στη συνέχεια, κάντε κλικ στο εικονίδιο του Excel στο ίδιο παράθυρο για να επιστρέψετε το φύλλο Excel.
- Μπορείτε να δείτε ότι η λειτουργία σχεδίασης είναι "ενεργοποιημένη" επισημασμένη με πράσινο χρώμα
Βήμα 4) Απενεργοποιήστε τη λειτουργία σχεδίασης, πριν κάνετε κλικ στο κουμπί εντολών
Βήμα 5) Αφού απενεργοποιήσετε τη λειτουργία σχεδίασης, θα κάνετε κλικ στο commandButton1. Θα δείξει την ακόλουθη μεταβλητή ως έξοδο για το εύρος που δηλώσαμε στον κώδικα.
- Ονομα
- Ημερομηνία συμμετοχής
- Εισόδημα σε curreny
Σταθερή στο VBA
Το Constant είναι σαν μια μεταβλητή, αλλά δεν μπορείτε να την τροποποιήσετε. Για να δηλώσετε σταθερές VBA, μπορείτε να χρησιμοποιήσετε τη λέξη-κλειδί Const .
Υπάρχουν δύο τύποι σταθερών,
- Ενσωματωμένο ή εγγενές που παρέχεται από την εφαρμογή.
- Συμβολική ή καθορισμένη από τον χρήστη
Μπορείτε είτε να ορίσετε το πεδίο ως ιδιωτικό από προεπιλογή είτε δημόσιο . Για παράδειγμα,
Δημόσιο Const DaysInYear = 365
Ιδιωτικές εργάσιμες ημέρες = 250
Κατεβάστε το Excel που περιέχει τον παραπάνω κώδικα
Κάντε λήψη του παραπάνω κώδικα του Excel
Περίληψη:
- Οι μεταβλητές είναι συγκεκριμένες τιμές που αποθηκεύονται στη μνήμη του υπολογιστή ή στο σύστημα αποθήκευσης.
- Μπορείτε να χρησιμοποιήσετε τη λέξη-κλειδί τύπων Dim VBA σε σύνταξη για να δηλώσετε ρητά τη μεταβλητή
- Οι τύποι δεδομένων VBA μπορούν να διαχωριστούν σε δύο τύπους
- Αριθμητικοί τύποι δεδομένων
- Μη αριθμητικοί τύποι δεδομένων
- Σε VBA, εάν ο τύπος δεδομένων δεν έχει καθοριστεί. Θα δηλώσει αυτόματα τη μεταβλητή ως παραλλαγή
- Το Constant είναι σαν μια μεταβλητή, αλλά δεν μπορείτε να την τροποποιήσετε. Για να δηλώσετε μια σταθερά στο VBA, χρησιμοποιείτε τη λέξη-κλειδί Const .