VBA Dizi Listesi (Örnekler) - Excel VBA'da Dizi Listesi Nasıl Oluşturulur?

İçindekiler

Vba'da veri türleri, işlev değişkenleri ve diğer önemli ifadelerden oluşan koleksiyonlar oluşturduk, ancak buna benzer şekilde VBA'da bir kullanıcının kendi değişken koleksiyonlarını ve kullanıcı tanımlı işlevleri bir dizide değiştirebileceği ve koyabileceği dizi listesine sahibiz, bazı Dizinin tasarlanacağı anahtar sözcükler.

Excel VBA Dizi Listesi

VBA ArrayList, verileri depolamak için VBA'da kullandığımız bir tür veri yapısıdır. Excel'de ArrayList VBA, bir değer dizisi oluşturmak için kullanılan bir sınıftır. Bu, dizilerin sabit uzunlukta olduğu, ancak Dizi Listesinin sabit bir uzunluğa sahip olmadığı geleneksel dizilerin aksine.

VAB ArrayList, VBA listesinin bir parçası değildir; daha ziyade, erişmeye başlamadan önce referansı ayarlamamız gereken harici bir kitaplık veya nesnedir.

VBA'daki diziler, herhangi bir kodlama dilinin ayrılmaz bir parçasıdır. Excel'de dizileri kullanarak, "alt sınır ve üst sınır" belirleyerek verileri tek bir değişken adı ile saklayabiliriz.

Normal dizilerde dizinin alt ve üst sınırına karar vermemiz gerekir. Statik Diziler durumunda değişkeni bildirirken çok önceden karar vermeliyiz ve Dinamik Diziler durumunda, dizinin uzunluğuna "ReDim" ifadesini kullanarak diziyi bildirdikten sonra karar vermemiz gerekir. VBA.

Ancak, alt sınırı ve üst sınırı bildirmeden "N" değerini saklayabileceğimiz bir seçeneğimiz daha var. Bu makalede, size bu seçeneği, yani “VBA Dizi Listesi” ni göstereceğiz.

Başvuruyu VBA ArrayList nesnesine ayarlamak için aşağıdaki adımları izleyin.

Adım 1: Araçlar> Referanslar'a gidin.

Adım 2: Nesne kitaplığı başvuru penceresi önünüzde görünecektir. " Mscorlib.dll " seçeneğini seçin . "

Adım 3: Tamam'a da tıklayın. Artık VBA ArrayList'e erişebiliriz.

Excel'de VBA ArrayList örnekleri

Aşağıda Excel VBA ArrayList örnekleri verilmiştir.

Örnek 1 - VBA ArrayList Örneğini Oluşturma

Excel VBA ArrayList harici bir nesne olduğundan, bunu kullanmaya başlamak için bir örnek oluşturmamız gerekiyor. Bir örnek oluşturmak için aşağıdaki adımları izleyin.

1. Adım: Değişkeni " ArrayList " olarak bildirin.

Kod:

Alt ArrayList_Example1 () Dim ArrayValues ​​As ArrayList End Sub

Adım 2: Dizi Listesi bir nesne olduğu için yeni bir örnek oluşturmamız gerekiyor.

Kod:

Alt ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= New ArrayList End Sub

Adım 3: Artık “Add” yöntemini kullanarak değerleri dizi değişkenine kaydetmeye devam edebiliriz. Aşağıdaki görselde üç değer ekledim.

Kod:

Alt ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= New ArrayList ArrayValues.Add "Hello" 'First Value ArrayValues.Add "Good"' Second Value ArrayValues.Add "Morning" 'Three Value End Sub

Şimdi üç değer atadık, hangisinin birincisi olduğunu nasıl belirleyeceğiz ve değerleri nasıl ortaya koyabiliriz veya ihtiyaçlarımız için kullanabiliriz.

Geleneksel dizi tipini hatırlıyorsanız, ilk dizi değerini şu şekilde ifade ederiz:

Benzer şekilde aynı tekniği burada da kullanabiliriz.

ArrayValue (0) = "Merhaba"
ArrayValue (1) = "İyi"
ArrayValue (2) = "Sabah"

Bunu mesaj kutusunda gösterelim.

Kod:

Alt ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= New ArrayList ArrayValues.Add "Hello" 'First Value ArrayValues.Add "Good"' Second Value ArrayValues.Add "Morning" 'Three Value MsgBox ArrayValues ​​(0) & vbNewLine (ArrayLine 1) & vbNewLine & ArrayValues ​​(2) End Sub

Şimdi kodu F5 tuşunu kullanarak veya manuel olarak çalıştırın, ardından VBA mesaj kutusunda "Merhaba", "İyi" ve "Günaydın" ifadelerini göreceğiz.

Bunun gibi, Array List Object ile istediğimiz sayıda değeri saklayabiliriz.

Örnek 2 - VBA ArrayList Kullanarak Değerleri Hücrelere Kaydetme

Çalışma sayfasındaki hücrelere atanan değerleri saklama örneğini görelim. Şimdi, aşağıdaki VBA koduna bakın.

Kod:

Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = New ArrayList 'Mobil MobileNames Adları.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. "VIVO" MobilFiyat Ekle. "LG" Ekle Mobil Fiyat Ayarla = Yeni DiziListesi Mobil Fiyat. 14500 Mobil Fiyat Ekle. 25000 Mobil Fiyat Ekle. 18500 Mobil Fiyat Ekle. 17500 Mobil Fiyat Ekle. 17800 Son Abone Ekle

With two array lists, I have stored Names of the Mobile and Prices of the Mobile. Now we need to insert these values to the worksheet for this. We need to use loops. The below loop will do the job for me.

Below is the Overall code to store values to the worksheet.

Code:

Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = New ArrayList 'Mobil MobileNames Adları.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. "VIVO" Mobil Adları Ekle. "LG" Ekle Mobil Fiyat Ayarla = Yeni DiziListesi Mobil Fiyat. 14500 Mobil Fiyat Ekleyin. 25000 Mobil Fiyat Ekleyin. 17500 Mobil Fiyat Ekleyin. 17800 k = 0 Ekleyin i = 1 ila 5 Hücre (i, 1) için Değer = Mobil Adlar (k) Hücreler (i, 2) .Değer = MobilFiyat (k) k = k + 1 Sonraki i End Sub

Kodu manuel olarak veya F5 tuşunu kullanarak çalıştırdığımızda aşağıdaki sonucu alacağız.

Ilginç makaleler...