VBA Varyant Dizisi

İçindekiler

Bu öğretici, Varyant Dizilerin nasıl oluşturulacağını ve bunlarla nasıl çalışılacağını gösterecektir.

Dizi Varyant Türü

Dizi, bir değişken türüdür. Diğer değişkenlerde olduğu gibi, diziler bir modül veya yordam düzeyi dizisi için Dim Deyimi veya genel düzey bir dizi için Public ifadesi kullanılarak bildirilir.

Varyant dizisi, varyant veri türüne sahip olarak bildirilen bir dizidir. Varyant veri türleri her tür değeri saklayabilir: metin, sayılar, tarihler, saat veya nesneler.

Varyant Dizi Avantajları

Varyant dizileri özeldir, çünkü tipik dizilerle çalışmaktan daha kolaydır.

  1. Onları beyan etmek daha kolaydır.
  2. Diziye hangi veri türünün girildiği konusunda endişelenmenize gerek yoktur (örneğin, bir hücre metin veya sayı içeriyorsa).
  3. Diziyi Array işleviyle doldurabilirsiniz (eğer bildirildiğinde Dizi boyutu tanımlanmadıysa).
  4. Diziyi yeniden boyutlandırmak / yeniden doldurmak için REDIM deyimini kullanmanıza gerek yoktur (eğer bildirildiğinde Dizi boyutu tanımlanmadıysa).

Bir Varyant Dizisi Bildirmek

Bir değişken dizisi bildirmek için bu basit ifadeyi yazabilirsiniz.

1 Dim değişkenAdları()

Bu bir dinamik değişken dizisi.

Veri türünü belirtmeniz gerekmediğine dikkat edin (varyant olduğu varsayılır) veya dizi boyutu.

Varyant Dizisine Değer Atama

Varyant dizileri her tür değeri tutabilir: metin, sayılar, tarihler, saat veya nesneler.

Bir değişken dizisine değer atamak için Dizi İşlevini kullanabilirsiniz:

12 'diziyi doldurvarNames() = Array("Fred", "Wilma", "Barney", "Betty")

Bu yöntem sizin için standart yöntemi kullanmaktan daha kolay olabilir:

12345 'her öğeyi doldurvarNames(0) = "Fred"varNames(1) = "Wilma"varNames(2) = "Barney"varNames(3) = "Betty"

Varyant Dizisini Yeniden Boyutlandır

Dinamik değişken dizileri, çalışma zamanında boyutu değiştirebilir. Tipik kullanmanıza gerek yok yeniden karart veya Redim Koru standart dizileri yeniden boyutlandırmak için gerekli ifadeler.

Varyant Dizi Örneği

Tüm bunları bir araya getirerek, bu prosedür bir değişken diziyi dolduracak ve yeniden dolduracaktır:

123456789101112 Alt TestArray()'değişkeni bildirDim varNames() Varyant Olarak'diziyi doldurvarNames() = Array("Fred", "Wilma", "Barney", "Betty")'değerleri döndürMsgBox Join(varNames, ",")'diziyi yeniden doldurvarNames() = Dizi(400, 500)'yeni değerleri döndürMsgBox Join(varNames, ",")Alt Bitiş

biz doldurduk varNames 4 ad ve ardından 2 sayı içeren dizi. Mesaj kutuları aşağıdaki gibi görünecektir.

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

wave wave wave wave wave