Funkcja VBA VARTYPE - Jak znaleźć typ danych zmiennej?

Funkcja Excel VBA VarType

VBA VARTYPE oznacza „Typ zmiennej”. Ta funkcja pomaga nam zidentyfikować typ danych przypisanych do określonej zmiennej lub, mówiąc prostym słowem, możemy powiedzieć, że znajduje rodzaj wartości przechowywanej lub przypisanej 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, mamy tutaj funkcję VBA „VarType”.

Przykłady

Przykład 1

W VBA pisząc kod zazwyczaj 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”, a dla tego ciągu przypisaliśmy wartość jako „Hello”.

Jest to prosty przypadek, ale możliwe jest również zadeklarowanie zmiennych 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ść jako „Hello”, więc za pomocą 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ścią zmiennej jest 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ścią zmiennej jest 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ścią zmiennej jest typ danych „Dziesiętny”
17 vbByte Wartość zmiennej to typ danych „Bajt”
20 vbLongLong Wartość zmiennej to typ danych „LONG LONG” (dotyczy tylko platform 64-bitowych)
36 vbUserDefinedType Wartość zmiennej to typ danych „Definiowany przez użytkownika”
8192 vbArray Wartość zmiennej to Array.

Ok, teraz nasz kod przestawił zmienny typ danych na 8, tj. 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.

Wynik to 9, czyli zmienna zawierała typ danych „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ż liczba 32500, która jest przypisana 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 zrozumieć, która liczba reprezentuje zmienny typ danych.

Interesujące artykuły...