VBA VarType

Bu makale, VBA'da VarType işlevinin kullanımını gösterecektir.

VarType, Değişken Türü anlamına gelir. Değişkenin adını VarType işlevine sağlayabiliriz ve bu, bir VBA sabitleri listesine göre o değişkende depolanan verilerin türünü gösteren bir tamsayı döndürür.

VarType'ı bulmak için Varyant Değişkeni Kullanma

Bir değişkeni Variant değişkeni olarak tanımlayabiliriz. Bu, içinde izin verilen her türlü veriyi saklamamıza izin verecektir. Daha sonra bu değişkeni doldurabilir ve değişkende ne tür veri olduğunu görmek için VarType işlevini kullanabiliriz.

Örneğin:

12345 Alt TestVarType()Varyant Olarak MyVariable DimMyVariable = "Merhaba Dünya"MsgBox "Değişkenin türü " & VarType(MyVariable)Alt Bitiş

Bu, aşağıdaki mesaj kutusunu döndürür:

Bu nedenle 8 değeri döndürülür. Bu, değişkende depolanan veri türünü tanımlayan bir Excel Sabiti'ndedir.

Bu sabit değer aşağıdaki tabloya karşılık gelir:

Devamlı Değer Açıklama
vbEmpty 0 Boş (başlatılmamış)
vbNull 1 Boş (geçerli veri yok)
vbInteger 2 tamsayı
vbLong 3 Uzun tamsayı
vbSingle 4 Tek duyarlıklı kayan noktalı sayı
vbDouble 5 Çift duyarlıklı kayan noktalı sayı
vbCurrency 6 Döviz değeri
vbDate 7 Tarih değeri
vbString 8 Sicim
vbObject 9 Nesne
vbError 10 Hata değeri
vbBoole 11 Boole değeri
vbVaryant 12 varyant (yalnızca değişken dizileriyle kullanılır)
vbDataObject 13 Bir veri erişim nesnesi
vbDecimal 14 ondalık değer
vbByte 17 bayt değeri
vbLongLong 20 LongLong tamsayı (yalnızca 64 bit platformlarda geçerlidir)
vbUserDefinedType 36 Kullanıcı tanımlı türleri içeren varyantlar
vbArray 8192 Dizi (bu işlev tarafından döndürüldüğünde her zaman başka bir sabite eklenir)

Başka bir örnek deneyebiliriz:

12345 Alt TestVarType()Varyant Olarak MyVariable DimDeğişkenim = 32760MsgBox "Değişkenin türü " & VarType(MyVariable)Alt Bitiş

Değişkende depolanan veri türü Tamsayı olduğundan, bu sefer mesaj kutusu 2 değerini döndürür.

Ancak, değeri 32780 olarak değiştirirsek, bir Tamsayı veri türünün maksimum değeri 32767 olduğundan, değer dönüşü 3 - Uzun Tamsayı olacaktır; bundan sonra bir Uzun Tam Sayıdır.

Kodu bir kez daha değiştirecek olursak:

12345 Alt TestVarType()Varyant Olarak MyVariable DimDeğişkenim = 32760,52MsgBox "Değişkenin türü " & VarType(MyVariable)Alt Bitiş

Şimdi döndürülen 5 değerini alırdık - ondalık basamaklar nedeniyle veri türü Double'dir.

Değişkendeki değeri tırnak içine alacak olsaydık, tırnak içindeki herhangi bir değer bir dize değeri olarak depolandığından bir kez daha 8 döndürülürdü.

12345 Alt TestVarType()Varyant Olarak MyVariable DimDeğişkenim = "32760.52"MsgBox "Değişkenin türü " & VarType(MyVariable)Alt Bitiş

Arkadaşlarınızla sayfasını paylaşan sitenin gelişimine yardımcı olacak

wave wave wave wave wave