Excel VBA VarType функция
VBA VARTYPE означава „Променлив тип“. Тази функция ни помага да идентифицираме типа данни, присвоен на конкретната променлива, или с проста дума можем да кажем, че намира какъв вид стойност се съхранява или присвоява на променливата.
Синтаксис
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__2.png.webp)
VarName: Просто трябва да предоставим името на променливата, за да намерим данните, съхранени в предоставеното име на променлива.
И така, той приема името на променливата като синтаксис или аргумент и в изхода връща типа на данните, присвоен на променливата, или вида на данните, съхранявани в променливата.
Така че, ако някога сте се чудили как да намерите типа данни на променливата или вида на данните, присвоени на променливата, тогава тук имаме VBA функция „VarType“.
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable_.png.webp)
Примери
Пример # 1
Във VBA, докато пишем кода, обикновено декларираме променливи и им присвояваме тип данни. Например погледнете кода по-долу VBA.
Код:
Sub VarType_Example () Dim MyVar As String MyVar = "Hello" End Sub
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__3.png.webp)
В горния пример сме декларирали променливата като „String“ и за този низ сме присвоили стойността като „Hello“.
Това е ясен случай, но също така е възможно да декларираме променливите, без да им присвояваме променливите, така че в такива случаи функцията VarType ни помага.
Код:
Sub VarType_Example () Dim MyVar MyVar = "Hello" End Sub
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__4.png.webp)
В горния код не сме присвоили никакъв тип данни, но веднага сме присвоили стойността като „Здравейте“, така че с помощта на функцията VarType можем да намерим типа данни на променливата.
Отворете MSGBOX във VBA кодиране в горния код.
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__5.png.webp)
След това отворете функцията VarType.
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__6.png.webp)
Сега въведете името на променливата като аргумент на функцията VARTYPE.
Код:
Sub VarType_Example () Dim MyVar MyVar = "Hello" MsgBox VarType (MyVar) End Sub
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__7.png.webp)
Сега стартирайте кода и вижте какво получаваме в полето за съобщения.
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable_.gif)
Получихме резултата като 8, тъй като VBA има определени кодове за всеки вид променлив тип данни, така че по-долу е подробният списък за вас.
Стойност | Постоянно | Описание | ||
0 | vbEmpty | Променливата все още не е инициализирана | ||
1 | vbNull | Не са валидни данни | ||
2 | vbInteger | Стойността на променливата е тип данни „Integer“ | ||
3 | vbLong | Стойността на променливата е тип данни „Long“ | ||
4 | vbСингъл | Стойността на променливата е тип данни „Single“ | ||
5 | vbDouble | Стойността на променливата е тип данни „Double“ | ||
6 | vbCurrency | Стойността на променливата е тип данни „Валута“ | ||
7 | vbDate | Стойността на променливата е тип данни „Дата“ | ||
8 | vbString | Стойността на променливата е тип данни „String“ | ||
9 | vbObject | Стойността на променливата е тип данни „Обект“ | ||
10 | vbError | Стойността на променливата е Стойност на грешката | ||
11. | vbBoolean | Стойността на променливата е „булев“ тип данни | ||
12 | vbVariant | Стойността на променливата е тип данни „Вариант“ (използва се само с масиви от варианти) | ||
13 | vbDataObject | Стойността на променливата е обект за достъп до данни | ||
14. | vbDecimal | Стойността на променливата е тип данни „Decimal“ | ||
17 | vbByte | Стойността на променливата е тип данни „Byte“ | ||
20. | vbLongLong | Стойността на променливата е тип данни „LONG LONG“ (важи само за 64-битови платформи) | ||
36 | vbUserDefinedType | Стойността на променливата е тип „Потребителски дефиниран“ | ||
8192 | vbArray | Стойността на променливата е Array. |
Добре, сега нашият код е пренастроил типа данни на променливата като 8, т.е. името на променливата „MyVar“ съдържа типа данни „String“.
Пример # 2
Сега вижте кода по-долу.
Код:
Sub VarType_Example2 () Dim MyVar Set MyVar = ThisWorkbook MsgBox VarType (MyVar) End Sub
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__8.png.webp)
Нека да стартираме този код и да видим какъв е резултатът.
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__2.gif)
Резултатът е 9, т.е. променливата съдържа типа данни „Обект“. Да, това е правилно, защото за променливата „MyVar“ сме задали справка за работната книга на „This Workbook“.
Пример # 3
Сега вижте кода по-долу.
Код:
Sub VarType_Example3 () Dim MyVar MyVar = 32500 MsgBox VarType (MyVar) End Sub
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__9.png.webp)
Това ще върне резултата като 2.
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__3.gif)
Тъй като числото 32500, което е присвоено на променливата, е стойност „Цяло число“.
Сега ще променя стойността на 40000 и ще видя резултата.
Код:
Sub VarType_Example4 () Dim MyVar MyVar = 40000 MsgBox VarType (MyVar) End Sub
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__10.png.webp)
Това ще даде резултата като 3.
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__4.gif)
Тъй като целочислената стойност завършва на 32767, така че всичко по-горе ще се третира като VBA LONG тип данни.
Сега ще приложа числото в двойни кавички.
Код:
Sub VarType_Example5 () Dim MyVar MyVar = "40000" MsgBox VarType (MyVar) End Sub
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__11.png.webp)
Изпълнете кода и вижте резултата.
![](https://cdn.know-base.net/5002318/vba_vartype_function_how_to_find_data_type_of_variable__5.gif)
Получихме резултата като 8, т.е. тип данни String.
Това е така, защото всичко, предоставено в скобите, ще се третира като променлива String.
Неща за запомняне
- VARTYPE означава „Променлив тип“.
- Типът данни се представя с уникални числа, така че вижте таблицата, за да разберете кое число представлява кой тип променлива данни.