Array Deklarasi VBA - Bagaimana Menyatakan Susunan dalam VBA?

Array Deklarasi Excel VBA

Pengisytiharan array dalam VBA sangat mirip dengan pemboleh ubah yang dilakukan oleh pernyataan redup yang sama atau pernyataan awam atau swasta statik, satu-satunya perbezaan dalam menyatakan array dan menyatakan pemboleh ubah adalah bahawa semasa menyatakan array kita harus memberikan ukuran array yang merupakan batas atas array dan batas bawah array.

Dalam Kod VBA, kita dapat menyatakan satu array pemboleh ubah yang dapat menahan jumlah pemboleh ubah dan bukannya menyatakan satu pemboleh ubah. Ini dapat mengurangkan bilangan baris dalam kod.

Array adalah sejenis pemboleh ubah yang dapat menahan lebih dari satu nilai, tidak seperti pemboleh ubah biasa yang dapat menahan hanya satu nilai pada satu masa. Array adalah versi lanjutan untuk menyatakan pemboleh ubah dalam VBA. Sebagai contoh, bayangkan situasi di mana anda ingin memberikan 5 nama pelajar kepada pemboleh ubah, dan dalam praktik umum, kami mengisytiharkan lima pemboleh ubah untuk semua lima pemboleh ubah yang kami tetapkan setiap nama pelajar satu persatu; di bawah adalah contoh kod yang sama.

Kod:

Sub Array_Contoh () Dim Pelajar1 Sebagai String Dim Student2 Sebagai String Dim Student3 Sebagai String Dim Student4 Sebagai String Dim Student5 Sebagai String End Sub

Daripada menyatakan begitu banyak pemboleh ubah, bagaimana dengan idea untuk menyatakan satu pemboleh ubah yang boleh memuatkan semua nama pelajar.

Ya, ini mungkin dilakukan dengan menyatakan susunan dalam VBA.

Contoh

Contoh # 1

Untuk menyatakan, kami tidak perlu membuat pengekodan VBA khas. Sebaliknya, kita perlu mengikuti konsep mudah.

Pertama, mulakan subproses.

Kod:

Sub Array_Contoh () Akhir Sub

Sekarang, seperti biasa, nyatakan pemboleh ubah sebagai rentetan.

Kod:

Sub Array_Contoh () Dim Dimensi Pelajar Sebagai Sub String End

Setelah pemboleh ubah diisytiharkan, sekarang pastikan berapa banyak nilai yang harus dimiliki. Dalam kes ini, saya ingin menyimpan lima nama pelajar, jadi sekarang kita perlu memperbaiki ukuran array iaitu, 1 hingga 5. Bekalkan perkara yang sama kepada pemboleh ubah dalam kurungan.

Kod:

Sub Array_Contoh () Murid Dim (1 Hingga 5) Sebagai Sub String End Sub

Sekarang untuk pemboleh ubah tunggal ini, kita dapat menyimpan 5 nama pelajar.

Kod:

Sub Array_Contoh () Pelajar Dim "Anderson" End Sub

Lihat berapa banyak baris yang telah kita kurangkan dengan menyatakan pemboleh ubah sebagai tatasusunan. Ini adalah salah satu cara untuk dilakukan. Kami masih boleh memendekkan kod ini dengan memasukkannya ke dalam gelung di VBA.

Sebagai contoh, lima nama yang sama dengan saya di sel lembaran kerja

Sekarang saya mahu menunjukkan nombor ini di kotak mesej di VBA; ok, mari kita nyatakan satu lagi pemboleh ubah untuk gelung sebagai jenis data Integer.

Kod:

Sub Array_Contoh () Pelajar Dim (1 Hingga 5) Sebagai Rentetan Dim K Sebagai Bilangan Akhir Integer

Seperti biasa, saya telah mengekalkan pemboleh ubah array sebagai 1 hingga 5 saiz.

Sekarang buka gelung UNTUK BERIKUTNYA di VBA, dan kerana kami mempunyai lima nama masukkan had sebagai 1 hingga 5.

Kod:

Sub Array_Contoh () Pelajar Dim (1 Hingga 5) Sebagai Rentetan Dim K Sebagai Bilangan bulat Untuk K = 1 Hingga 5 Selanjutnya Akhir Akhir

Untuk menetapkan nilai pada pemboleh ubah array, kita tidak perlu mengikuti cara sebelumnya untuk menunjukkan Pelajar (1), Pelajar (2) seperti ini untuk pemboleh ubah gelung bekalan kedudukan nombor "k."

Kod:

Sub Array_Contoh () Pelajar Dim (1 Hingga 5) Sebagai Rentetan Dim K Sebagai Bilangan Bulat Untuk K = 1 Hingga 5 Pelajar (K) = Sub Akhir Akhir

Untuk pemboleh ubah larik ini, kita memerlukan nilai dari lembaran kerja, jadi menggunakan harta CELLS mendapat nilai dari lembaran kerja.

Kod:

Sub Array_Contoh () Pelajar Dim (1 Hingga 5) Sebagai Rentetan Dim K Sebagai Bilangan bulat Untuk K = 1 Hingga 5 Pelajar (K) = Sel (K, 1). Nilai Seterusnya K Akhir Sub

Sekarang melalui kotak mesej, tunjukkan nilai pemboleh ubah array.

Kod:

Sub Array_Contoh () Pelajar Dim (1 Hingga 5) Sebagai Rentetan Dim K Sebagai Bilangan bulat Untuk K = 1 Hingga 5 Pelajar (K) = Sel (K, 1). Nilai Pelajar MsgBox (K) Selanjutnya Sub Akhir

Sekarang jalankan kod. Di kotak mesej, kita akan melihat nama depan. Sekali lagi tekan Ok untuk melihat nama kedua. Seperti ini dengan menekan Ok, kita dapat melihat kelima-lima nama tersebut.

Contoh # 2 - Susunan Dua Dimensi

We have seen above how the array works, now we will see to dimensional arrays. Two-dimensional arrays concentrate on both rows and columns.

In the above example, we have determined the array’s size as 1 to 5; this either concentrates on rows or columns.

By using two-dimensional arrays, we can concentrate on both rows and columns. For this, we need to enclose two loops.

First, define the variable then late we will decide about the size of the array.

Code:

Sub Two_Array_Example() Dim Student As String End Sub

First, decide row size then decide the column length.

Code:

Sub Two_Array_Example() Dim Student(1 To 5, 1 To 3) As String End Sub

For this, I have structured the data for student names, marks, and grade status.

Now come back to the coding window.

Declare two more variables for a loop.

Code:

Sub Two_Array_Contoh () Pelajar Dim (1 Hingga 5, 1 Hingga 3) Sebagai Rentetan Dim K Sebagai Integer, J Sebagai Sub Akhir Akhir

Sekarang lampirkan gelung, seperti gambar di bawah.

Kod:

Sub Two_Array_Contoh () Dim Pelajar (1 Hingga 5, 1 Hingga 3) Sebagai Rentetan Dim k Sebagai Bilangan bulat, J Sebagai Bilangan bulat untuk k = 1 hingga 5 Untuk J = 1 hingga 3 Lembaran Kerja ("Senarai Pelajar"). Pilih Pelajar (k, J) = Sel (k, J). Lembaran Kerja Nilai ("Salin Lembaran"). Pilih Sel (k, J). Nilai = Pelajar (k, J) Selanjutnya J Seterusnya k Akhir Sub

Apa yang akan dilakukannya ialah menyalin data dari helaian "Daftar Pelajar" dan menampal di "Salin Helaian."

Perkara yang Perlu Diingat

  • Susunannya adalah konsep yang luas; ini hanyalah bahagian pengenalan.
  • Anda memerlukan kemahiran pengekodan lanjutan untuk memahami deklarasi larik.
  • Semakin banyak anda menggunakan tatasusunan dalam kod anda, semakin banyak anda akan terbiasa dengannya.

Artikel menarik...