Funkcja Excel VBA VarType
VBA VARTYPE oznacza „Typ zmiennej”. Ta funkcja pomaga nam zidentyfikować typ danych przypisanych do określonej zmiennej lub w prostym słowie możemy powiedzieć, że znajduje, jaki rodzaj wartości jest przechowywany lub przypisany do zmiennej.
Składnia
VarName: wystarczy podać nazwę zmiennej, aby znaleźć dane przechowywane w podanej nazwie zmiennej.
Tak więc przyjmuje nazwę zmiennej jako składnię lub argument, a na wyjściu zwraca typ danych przypisany do zmiennej lub rodzaj danych przechowywanych w zmiennej.
Tak więc, jeśli kiedykolwiek zastanawiałeś się, jak znaleźć zmienny typ danych lub rodzaj danych przypisanych do zmiennej, tutaj mamy funkcję VBA „VarType”.
Przykłady
Możesz pobrać ten szablon VBA VARTYPE Excel tutaj - Szablon VBA VARTYPE ExcelPrzykład 1
W VBA pisząc kod najczęściej deklarujemy zmienne i przypisujemy im typ danych. Na przykład spójrz na poniższy kod VBA.
Kod:
Sub VarType_Example () Dim MyVar As String MyVar = "Hello" End Sub
W powyższym przykładzie zadeklarowaliśmy zmienną jako „String” i dla tego ciągu przypisaliśmy wartość jako „Hello”.
Jest to prosty przypadek, ale można również zadeklarować zmienne bez przypisywania do nich zmiennych, dlatego w takich przypadkach pomaga nam funkcja VarType.
Kod:
Sub VarType_Example () Dim MyVar MyVar = "Hello" End Sub
W powyższym kodzie nie przypisaliśmy żadnego typu danych, ale od razu przypisaliśmy wartość „Hello”, więc korzystając z funkcji VarType możemy znaleźć typ danych zmiennej.
Otwórz MSGBOX w kodowaniu VBA w powyższym kodzie.
Następnie otwórz funkcję VarType.
Teraz wprowadź nazwę zmiennej jako argument funkcji VARTYPE.
Kod:
Sub VarType_Example () Dim MyVar MyVar = "Hello" MsgBox VarType (MyVar) End Sub
Teraz uruchom kod i zobacz, co otrzymamy w oknie komunikatu.
Otrzymaliśmy wynik jako 8, ponieważ VBA ma określone kody dla każdego rodzaju zmiennych typów danych, więc poniżej znajduje się szczegółowa lista dla Ciebie.
Wartość | Stały | Opis | ||
0 | vbEmpty | Zmienna nie została jeszcze zainicjowana | ||
1 | vbNull | Przypisano nieprawidłowe dane | ||
2 | vbInteger | Wartość zmiennej to typ danych „Integer” | ||
3 | vbLong | Wartością zmiennej jest typ danych „Long” | ||
4 | vbSingle | Wartością zmiennej jest typ danych „Pojedynczy” | ||
5 | vbDouble | Wartością zmiennej jest typ danych „Double” | ||
6 | vbCurrency | Wartość zmiennej to typ danych „Waluta” | ||
7 | vbDate | Wartością zmiennej jest typ danych „Data” | ||
8 | vbString | Wartością zmiennej jest typ danych „String” | ||
9 | vbObject | Wartością zmiennej jest typ danych „Obiekt” | ||
10 | vbError | Wartość zmiennej to Wartość błędu | ||
11 | vbBoolean | Wartość zmiennej to typ danych „Boolean” | ||
12 | vbVariant | Wartością zmiennej jest typ danych „Wariant” (używany tylko z tablicami wariantów) | ||
13 | vbDataObject | Wartością zmiennej jest obiekt dostępu do danych | ||
14 | vbDecimal | Wartość zmiennej to typ danych „Dziesiętny” | ||
17 | vbByte | Wartością zmiennej jest typ danych „Bajt” | ||
20 | vbLongLong | Wartość zmiennej to typ danych „LONG LONG” (dotyczy tylko platform 64-bitowych) | ||
36 | vbUserDefinedType | Wartość zmiennej to typ danych „Zdefiniowany przez użytkownika” | ||
8192 | vbArray | Wartość zmiennej to Array |
Ok, teraz nasz kod dostroił zmienny typ danych na 8, tzn. Nazwa zmiennej „MyVar” zawiera typ danych „String”.
Przykład nr 2
Teraz spójrz na poniższy kod.
Kod:
Sub VarType_Example2 () Dim MyVar Ustaw MyVar = ThisWorkbook MsgBox VarType (MyVar) End Sub
Uruchommy ten kod i zobaczmy, jaki jest wynik.
Wynikiem jest 9 tj. Zmienna zawierająca dane typu „Obiekt”. Tak, jest to poprawne, ponieważ dla zmiennej „MyVar” ustawiliśmy odniesienie do skoroszytu „This Workbook”.
Przykład nr 3
Teraz spójrz na poniższy kod.
Kod:
Sub VarType_Example3 () Dim MyVar MyVar = 32500 MsgBox VarType (MyVar) End Sub
To zwróci wynik jako 2.
Ponieważ numer 32500, który jest przypisany do zmiennej, jest wartością „Integer”.
Teraz zmienię wartość na 40000 i zobaczę wynik.
Kod:
Sub VarType_Example4 () Dim MyVar MyVar = 40000 MsgBox VarType (MyVar) End Sub
To da wynik jako 3.
Ponieważ wartość Integer kończy się na 32767, więc wszystko powyżej będzie traktowane jako typ danych VBA LONG.
Teraz umieszczę liczbę w cudzysłowach.
Kod:
Sub VarType_Example5 () Dim MyVar MyVar = "40000" MsgBox VarType (MyVar) End Sub
Uruchom kod i zobacz wynik.
Otrzymaliśmy wynik jako 8 czyli typ danych String.
Dzieje się tak, ponieważ wszystko podane w nawiasach będzie traktowane jako zmienna typu String.
Rzeczy do zapamiętania
- VARTYPE to skrót od „Variable Type”.
- Typ danych jest reprezentowany przez unikalne liczby, więc zapoznaj się z tabelą, aby dowiedzieć się, która liczba reprezentuje zmienny typ danych.