ArrayList VBA

Dalam vba kami telah mengumpulkan koleksi jenis data, pemboleh ubah fungsi dan pernyataan penting lain tetapi serupa dengan ini kami mempunyai senarai array di VBA di mana pengguna dapat mengubah dan meletakkan koleksi pemboleh ubah sendiri dan fungsi yang ditentukan pengguna dalam array, ada yang pasti kata kunci untuk senarai tatasusunan untuk merancangnya.

ArrayList Excel VBA

VBA ArrayList adalah sejenis struktur data yang kami gunakan di VBA untuk menyimpan data. ArrayList dalam Excel VBA adalah kelas yang digunakan untuk membuat susunan nilai. Ini tidak seperti tatasusunan tradisional di mana tatasusunan itu mempunyai panjang tetap tetapi Senarai Array tidak mempunyai panjang tetap.

VAB ArrayList bukan sebahagian daripada senarai VBA melainkan perpustakaan luaran atau objek yang perlu kita tetapkan rujukan sebelum kita mula mengaksesnya.

Susunan dalam VBA merupakan bahagian yang tidak terpisahkan dari mana-mana bahasa pengekodan. Dengan menggunakan array dalam excel kita dapat menyimpan data dengan satu nama variabel dengan menyatakan "batas bawah & had atas".

Dengan tatasusunan biasa, kita perlu memutuskan had bawah dan had atas laras kita perlu memutuskan dengan lebih awal terlebih dahulu pada saat menyatakan pemboleh ubah dalam hal Susunan Statik dan dalam kes Susunan Dinamik kita perlu memutuskan panjang array setelah menyatakan array dengan menggunakan pernyataan "ReDim" di VBA.

Namun, kita mempunyai satu pilihan lagi di mana kita dapat menyimpan bilangan nilai "N" tanpa menyatakan had bawah dan had atas. Dalam artikel ini, kami akan menunjukkan kepada anda mengenai pilihan tersebut iaitu "VBA ArrayList"

Untuk menetapkan rujukan ke objek ArrayList VBA untuk mengikuti langkah-langkah di bawah.

Langkah 1: Pergi ke Alat> Rujukan

Langkah 2: Tetingkap rujukan perpustakaan objek akan muncul di hadapan anda. Pilih pilihan " mscorlib.dll "

Langkah 3: Klik juga OK. Sekarang kita boleh mengakses ArrayList VBA.

Contoh ArrayList VBA di Excel

Berikut adalah contoh ArrayList Excel VBA.

Anda boleh memuat turun Templat VBA ArrayList Excel ini di sini - Templat VBA ArrayList Excel

Contoh # 1 - Buat Contoh ArrayList VBA

Oleh kerana Excel VBA ArrayList adalah objek luaran, kita perlu membuat contoh untuk mula menggunakannya. Untuk membuat contoh ikuti langkah-langkah di bawah.

Langkah 1: Nyatakan pemboleh ubah sebagai " ArrayList ".

Kod:

 Sub ArrayList_Contoh1 () Dim ArrayValues ​​Sebagai ArrayList End Sub 

Langkah 2: Oleh kerana Array List adalah objek, kita perlu membuat contoh baru.

Kod:

 Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= Sub ArrayList Baru 

Langkah 3: Sekarang kita dapat terus menyimpan nilai ke pemboleh ubah array dengan menggunakan kaedah "Tambah". Dalam gambar di bawah saya telah menambah tiga nilai.

Kod:

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

Sekarang kita telah menetapkan tiga nilai, bagaimana kita mengenal pasti mana yang pertama dan bagaimana kita dapat menunjukkan nilai atau menggunakannya sesuai dengan keperluan kita.

Sekiranya anda ingat jenis array tradisional kami merujuk nilai array pertama seperti ini "ArrayName (0)"

Begitu juga, kita boleh menggunakan teknik yang sama di sini.

ArrayValue (0) = "Helo"
ArrayValue (1) = "Bagus"
ArrayValue (2) = "Pagi"

Mari tunjukkan ini di kotak mesej.

Kod:

 Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= New ArrayList ArrayValues.Add "Hello" 'First Value ArrayValues.Add "Good"' Nilai Kedua ArrayValues. Tambahkan "Morning" 'Three Value MsgBox ArrayValues ​​(0) & vbNewLine 1) & Nilai vbNewLine & Array (2) Sub Akhir 

Sekarang jalankan kod menggunakan kunci F5 atau secara manual, kita akan melihat "Hello", "Good", dan "Morning" di kotak mesej VBA.

Seperti ini, kita dapat menyimpan sejumlah nilai dengan Array List Object.

Contoh # 2 - Simpan Nilai ke Sel Menggunakan ArrayList VBA

Mari kita lihat contoh menyimpan nilai yang ditetapkan ke sel di lembaran kerja. Sekarang, lihat kod VBA di bawah.

Kod:

 Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = New ArrayList 'Names of MobileNames.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Tambahkan "VIVO" MobileNames.Add "LG" Set MobilePrice = ArrayList Baru MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 Sub End 

Dengan dua senarai tatasusunan, saya telah menyimpan Nama Ponsel dan Harga Mudah Alih. Sekarang kita perlu memasukkan nilai-nilai ini ke lembaran kerja untuk ini kita perlu menggunakan gelung. Gelung di bawah akan melakukan tugas untuk saya.

Berikut adalah kod Keseluruhan untuk menyimpan nilai ke lembaran kerja.

Kod:

 Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = New ArrayList 'Names of MobileNames.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Tambahkan "VIVO" MobileNames.Add "LG" Set MobilePrice = New ArrayList MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 k = 0 For i = 1 To 5 Cells (i, 1) .Value = MobileNames (k) Cell (i, 2) .Value = MobilePrice (k) k = k + 1 Next i End Sub 

Apabila kita menjalankan kod secara manual atau menggunakan kekunci F5, kita akan mendapat hasil di bawah.