Съдържание

# Функции TypeName и VarType

Връща числова стойност, която съдържа информация за типа на променлива.

### Синтаксис:

      TypeName (Varname As Variant) As String
      VarType (Varname As Variant) As Integer

### Резултат:

- Текст за TypeName, последван от „()“ за масиви.

- Цяло число за VarType. За масиви от типа VarType към връщаната стойност е прибавено числото 8192.

### Параметри:

Varname: името на променливата, чийто тип искате да определите.

Връщат се следните стойности:

Стойности на TypeName | Наименувана константа | VarType values | Тип на променливата
--- | --- | --- | ---
…() | 8192 | Масив от променливи
Boolean | 11 | Променлива от тип Boolean
Byte | 17 | Променлива от тип Byte
Date | V_DATE | 7 | Променлива от тип Date
Currency | V_CURRENCY | 6 | Променлива от тип Currency
Double | V_DOUBLE | 5 | Променлива с плаваща запетая с двойна точност
Error | 11 | Променлива от тип грешка
Integer | V_INTEGER | 2 | Променлива от тип Integer
Long | V_LONG | 3 | Променлива от тип Long
Object | 9 | Променлива от тип Object
Single | V_SINGLE | 4 | Променлива с плаваща запетая с единична точност
String | V_STRING | 8 | Променлива от тип String
Variant | 12 | Променлива от тип Variant (може да съдържа произволен тип според присвоената стойност)
Empty | V_EMPTY | 0 | Неинициализирана променлива от тип Variant
Null | V_NULL | 1 | Променливата не съдържа валидни данни.

### Кодове за грешка:

5 Невалидно извикване на процедура

### Пример:

      Sub TypeName_VarType_example
        Const __Object=9, __Error=10, __Boolean=11, __Variant=12, __Byte=17, _
          __Array = 8192, aText = "Lorem ipsum dolor sit amet, consectetur …"
        Dim int16 As Integer,  int32() As Long   ' V_INTEGER,  V_LONG
        Dim flt32!,            flt64() As Double ' V_SINGLE,   V_DOUBLE
        Dim curr@,             dat3 As Date      ' V_CURRENCY, V_DATE
        Dim strng() As String, objct() As Object ' V_STRING,   …
        Dim bool As Boolean,   unkwn(), byt3 As Byte ' …,      V_EMPTY, …
        Dim table(-3 To 5)
        MsgBox _
         TypeName(int16) &" "& Vartype(int16) &" "& V_INTEGER        &" "& Chr(13) &_
         TypeName(int32) &" "& Vartype(int32) &" "& V_LONG+__Array   &" "& Chr(13) &_
         TypeName(flt32) &" "& VarType(flt32) &" "& V_SINGLE         &" "& Chr(13) &_
         TypeName(flt64) &" "& VarType(flt64) &" "& V_DOUBLE+__Array &" "& Chr(13) &_
         TypeName(dat3)  &" "& VarType(dat3)  &" "& V_DATE           &" "& Chr(13) &_
         TypeName(curr)  &" "& VarType(curr)  &" "& V_CURRENCY       &" "& Chr(13) &_
         TypeName(atext) &" "& VarType(aText) &" "& V_STRING         &" "& Chr(13) &_
         TypeName(strng) &" "& VarType(strng) &" "& V_STRING+__Array &" "& Chr(13) &_
         TypeName(objct) &" "& VarType(objct) &" "& __Object+__Array &" "& Chr(13) &_
         TypeName(unkwn) &" "& VarType(unkwn) &" "& V_EMPTY          &" "& Chr(13) &_
         TypeName(bool)  &" "& VarType(bool)  &" "& __Boolean        &" "& Chr(13) &_
         TypeName(varnt) &" "& VarType(varnt) &" "& V_EMPTY          &" "& Chr(13) &_
         TypeName(table) &" "& VarType(table) &" "&__Variant+__Array &" "& Chr(13) &_
         TypeName(byt3)  &" "& VarType(byt3)  &" "& __Byte           _
         ,, "Типове данни в LibreOffice Basic"
        Msgbox "TypeName(table): "&TypeName(table) &Chr(13)& _
          "VarType(table)="&Vartype(table) _
          ,,"Масив от вариантни стойности"
      End Sub ' TypeName_VarType_example

Теми, свързани с показаната

Оператор Const

Оператор Dim

Функция MsgBox