Λειτουργία VBA VARTYPE | Πώς να βρείτε τον τύπο δεδομένων της μεταβλητής;

Λειτουργία Excel VBA VarType

Το VBA VARTYPE σημαίνει "Μεταβλητός τύπος". Αυτή η συνάρτηση μας βοηθά να αναγνωρίσουμε τον τύπο δεδομένων που έχει εκχωρηθεί στη συγκεκριμένη μεταβλητή ή με απλή λέξη μπορούμε να πούμε ότι βρίσκει τι είδους τιμή αποθηκεύεται ή εκχωρείται στη μεταβλητή.

Σύνταξη

VarName: Απλώς πρέπει να παρέχουμε το όνομα της μεταβλητής για να βρούμε τα δεδομένα που είναι αποθηκευμένα στο παρεχόμενο όνομα της μεταβλητής.

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

Έτσι, εάν έχετε αναρωτηθεί ποτέ πώς να βρείτε τον τύπο δεδομένων μεταβλητής ή το είδος των δεδομένων που έχουν εκχωρηθεί στη μεταβλητή, τότε εδώ έχουμε μια συνάρτηση VBA «VarType».

Παραδείγματα

Μπορείτε να κατεβάσετε αυτό το Πρότυπο VBA VARTYPE Excel εδώ - Πρότυπο VBA VARTYPE Excel

Παράδειγμα # 1

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

Κώδικας:

 Υπο VarType_Example () Dim MyVar As String MyVar = "Hello" End Sub 

Στο παραπάνω παράδειγμα, έχουμε δηλώσει τη μεταβλητή ως "String" και για αυτήν τη συμβολοσειρά, έχουμε εκχωρήσει την τιμή ως "Hello"

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

Κώδικας:

 Sub VarType_Example () Dim MyVar MyVar = "Hello" End Sub 

Στον παραπάνω κώδικα δεν έχουμε εκχωρήσει κανέναν τύπο δεδομένων αλλά αμέσως εκχωρήσαμε την τιμή ως «Γεια», οπότε χρησιμοποιώντας τη συνάρτηση VarType μπορούμε να βρούμε τον τύπο δεδομένων της μεταβλητής.

Ανοίξτε το MSGBOX σε κωδικοποίηση VBA στον παραπάνω κώδικα.

Στη συνέχεια, ανοίξτε τη συνάρτηση VarType.

Τώρα εισαγάγετε το όνομα της μεταβλητής ως το όρισμα της συνάρτησης VARTYPE.

Κώδικας:

 Υπο VarType_Example () Dim MyVar MyVar = "Hello" MsgBox VarType (MyVar) End Sub 

Τώρα εκτελέστε τον κωδικό και δείτε τι λαμβάνουμε στο πλαίσιο μηνυμάτων.

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

αξία Συνεχής Περιγραφή
0 vbEmpty Η μεταβλητή δεν έχει ακόμη αρχικοποιηθεί
1 vbNull Δεν έχουν εκχωρηθεί έγκυρα δεδομένα
2 vbInteger Η μεταβλητή τιμή είναι τύπος δεδομένων "Ακέραιος"
3 vbLong Η μεταβλητή τιμή είναι "Long" τύπος δεδομένων
4 vbSingle Η μεταβλητή τιμή είναι "Single" τύπος δεδομένων
5 vb Διπλό Η μεταβλητή τιμή είναι "Διπλός" τύπος δεδομένων
6 vb Νόμισμα Η μεταβλητή τιμή είναι τύπος δεδομένων "Νόμισμα"
7 vbΗμερομηνία Η μεταβλητή τιμή είναι τύπος δεδομένων "Ημερομηνία"
8 vbString Η μεταβλητή τιμή είναι "String" τύπος δεδομένων
9 vbObject Η μεταβλητή τιμή είναι τύπος δεδομένων "Object"
10 vb Σφάλμα Η μεταβλητή τιμή είναι τιμή σφάλματος
11 vbBoolean Η μεταβλητή τιμή είναι "Boolean" τύπος δεδομένων
12 vb Παραλλαγή Η μεταβλητή τιμή είναι τύπος δεδομένων "Παραλλαγή" (χρησιμοποιείται μόνο με πίνακες παραλλαγών)
13 vbDataObject Η μεταβλητή τιμή είναι το αντικείμενο πρόσβασης δεδομένων
14 vb Δεκαδικό Η μεταβλητή τιμή είναι "Δεκαδικός" τύπος δεδομένων
17 vbByte Η μεταβλητή τιμή είναι τύπος δεδομένων "Byte"
20 vbLongLong Η μεταβλητή τιμή είναι τύπος δεδομένων "LONG LONG" (ισχύει μόνο σε πλατφόρμες 64-bit)
36 vbUserDefinedType Η μεταβλητή τιμή είναι τύπος δεδομένων "Καθορισμένος από τον χρήστη"
8192 vbArray Η μεταβλητή τιμή είναι Array

Εντάξει, τώρα ο κώδικάς μας έχει επανασυνδέσει τον τύπο δεδομένων μεταβλητής ως 8, δηλαδή το όνομα μεταβλητής "MyVar" περιέχει τον τύπο δεδομένων "String".

Παράδειγμα # 2

Τώρα, δείτε τον παρακάτω κώδικα.

Κώδικας:

 Υπο VarType_Example2 () Dim MyVar Set MyVar = ThisWorkbook MsgBox VarType (MyVar) End Sub 

Ας τρέξουμε αυτόν τον κώδικα και να δούμε ποιο είναι το αποτέλεσμα.

Το αποτέλεσμα είναι 9 δηλ. Η μεταβλητή περιείχε τον τύπο δεδομένων "Object". Ναι, αυτό είναι σωστό επειδή για τη μεταβλητή "MyVar" έχουμε ορίσει την αναφορά του βιβλίου εργασίας "Αυτό το βιβλίο εργασίας".

Παράδειγμα # 3

Τώρα, δείτε τον παρακάτω κώδικα.

Κώδικας:

 Υπο VarType_Example3 () Dim MyVar MyVar = 32500 MsgBox VarType (MyVar) End Sub 

Αυτό θα επιστρέψει το αποτέλεσμα ως 2.

Επειδή ο αριθμός 32500 που αντιστοιχεί στη μεταβλητή είναι τιμή "Ακέραιος".

Τώρα θα αλλάξω την τιμή σε 40000 και θα δω το αποτέλεσμα.

Κώδικας:

 Υπο VarType_Example4 () Dim MyVar MyVar = 40000 MsgBox VarType (MyVar) End Sub 

Αυτό θα δώσει το αποτέλεσμα ως 3.

Επειδή η τιμή Integer τελειώνει στα 32767, οπότε οτιδήποτε παραπάνω θα αντιμετωπίζεται ως τύπος δεδομένων VBA LONG.

Τώρα θα περικλείσω τον αριθμό σε διπλά εισαγωγικά

Κώδικας:

 Υπο VarType_Example5 () Dim MyVar MyVar = "40000" MsgBox VarType (MyVar) End Sub 

Εκτελέστε τον κωδικό και δείτε το αποτέλεσμα.

Έχουμε το αποτέλεσμα ως 8, δηλαδή τύπος δεδομένων String.

Αυτό συμβαίνει επειδή οτιδήποτε παρέχεται εντός της παρένθεσης θα αντιμετωπίζεται ως μεταβλητή String.

Πράγματα που πρέπει να θυμάστε

  • Το VARTYPE σημαίνει "Μεταβλητός τύπος".
  • Ο τύπος δεδομένων αντιπροσωπεύεται από μοναδικούς αριθμούς, οπότε ανατρέξτε στον πίνακα για να κατανοήσετε ποιος αριθμός αντιπροσωπεύει ποιον τύπο μεταβλητής δεδομένων.