Array VBA Excel: Tipe dan Cara Penggunaannya Beserta Contoh

โšก Ringkasan Cerdas

Array dalam Excel VBA menyimpan sekelompok nilai terkait dengan tipe data yang sama dalam satu nama, yang diakses melalui indeks. Halaman ini menjelaskan array statis dan dinamis, array satu, dua, dan multidimensi, sintaks deklarasi, dan contoh pengisian minuman yang telah dikerjakan.

  • ๐Ÿ“ฆ Konsep Array: Sebuah lokasi memori bernama tunggal yang menyimpan banyak nilai dengan tipe data yang sama, dipisahkan oleh sebuah indeks.
  • ๐ŸŽฏ Keuntungan: Array mengelompokkan data yang terkait, mengurangi jumlah variabel, dan mempercepat pengambilan serta pengurutan data.
  • ๐Ÿ“Œ Array Statis: Dideklarasikan dengan ukuran tetap, misalnya Dim ArrayMonth(12) As String, ketika jumlah elemen diketahui.
  • ๐Ÿ”„ Array Dinamis: Dideklarasikan kosong dengan Dim ArrayMonth() dan ukurannya ditentukan kemudian menggunakan ReDim ketika jumlah elemen tidak diketahui.
  • ๐Ÿ“ Dimensi: Array menggunakan satu, dua, atau lebih indeks untuk memodelkan daftar tunggal, tabel, atau data bertingkat.
  • ๐Ÿงช Contoh Kerja: Tombol perintah memuat empat nama minuman dari sebuah array ke dalam sel lembar kerja menggunakan Sheet1.Cells.

Array VBA Excel

Apa itu Array VBA?

Array didefinisikan sebagai lokasi memori yang mampu menyimpan lebih dari satu nilai. Semua nilai harus bertipe data yang sama. Katakanlah Anda ingin menyimpan daftar minuman favorit Anda dalam satu variabel, Anda dapat menggunakan array VBA untuk melakukannya.

Dengan menggunakan array, Anda bisa merujuk ke nilai terkait dengan nama yang sama. Anda dapat menggunakan indeks atau subskrip untuk membedakannya. Nilai individual disebut sebagai elemen array Excel VBA. Mereka berdekatan dari indeks 0 hingga nilai indeks tertinggi.

Tutorial ini mengasumsikan Anda menggunakan Microsoft Excel versi 2013. Pengetahuan ini masih berlaku untuk versi lain Microsoft Unggul juga.

Apa Keuntungan dari array?

Sebelum menulis kode array, ada baiknya memahami mengapa array layak digunakan. Berikut adalah beberapa manfaat yang ditawarkan oleh fungsi array VBA.

  1. Kelompokkan data yang terkait secara logis โ€“ katakanlah Anda ingin menyimpan daftar siswa. Anda dapat menggunakan variabel array tunggal yang memiliki lokasi terpisah untuk kategori siswa, yaitu taman kanak-kanak, sekolah dasar, sekolah menengah, sekolah menengah atas, dll.
  2. Array memudahkan penulisan kode yang dapat dipelihara. Untuk data yang terkait secara logis, ini memungkinkan Anda untuk mendefinisikan satu variabel, alih-alih mendefinisikan lebih dari satu variabel.
  3. Performa lebih baik โ€“ setelah array ditentukan, pengambilan, pengurutan, dan modifikasi data akan lebih cepat.

Jenis Array di VBA

VBA mendukung dua jenis array yaitu;

  • Statis โ€“ Jenis array ini memiliki jumlah elemen tetap yang dapat disimpan. Seseorang tidak dapat mengubah ukuran tipe data Array Statis. Ini berguna ketika Anda ingin bekerja dengan entitas yang diketahui seperti jumlah hari dalam seminggu, jenis kelamin, dll.Sebagai contoh: Redupkan ArrayMonth(12) Sebagai String
  • Dinamis โ€“ Jenis array ini tidak memiliki jumlah elemen tetap yang dapat disimpan. Ini berguna ketika bekerja dengan entitas yang tidak dapat Anda tentukan sebelumnya jumlahnya.Sebagai contoh: Redupkan ArrayMonth() Sebagai Varian

Setelah Anda mengetahui tipe mana yang sesuai dengan data Anda, langkah selanjutnya adalah sintaks deklarasi untuk masing-masing tipe.

Sintaks untuk mendeklarasikan array

Array statis

Sintaks untuk mendeklarasikan STATIS array adalah sebagai berikut:

Dim arrayName (n) as datatype

SINI,

Code Tindakan
Redupkan tipe data arrayName (n).
  1. Ia mendeklarasikan variabel array yang disebut arrayName dengan ukuran n dan tipe data. Ukuran mengacu pada jumlah elemen yang dapat disimpan oleh array.

Array dinamis

Sintaks untuk mendeklarasikan DINAMIS array adalah sebagai berikut:

Dim arrayName() as datatype
ReDim arrayName(4)

SINI,

Code Tindakan
Redupkan tipe data arrayName()
  1. Ini mendeklarasikan variabel array yang disebut arrayName tanpa menentukan jumlah elemen
Redupkan kembali nama array(4)
  1. Ini menentukan ukuran array setelah array ditentukan.

Dimensi Array

Array dapat berupa satu dimensi, dua dimensi atau multidimensi.

  • Satu dimensi: Dalam dimensi ini, array hanya menggunakan satu indeks. Misalnya, sejumlah orang pada setiap umur.
  • Dua dimensi: Dalam dimensi ini, array menggunakan dua indeks. Misalnya, jumlah siswa di setiap kelas. Hal ini membutuhkan jumlah kelas dan jumlah siswa di setiap kelas
  • Multi-dimensi: Dalam dimensi ini, array menggunakan lebih dari dua indeks. Misalnya suhu pada siang hari. (30, 40, 20).

Cara menggunakan Array di Excel VBA

Setelah teori dipahami, kita dapat menerapkan array dalam buku kerja nyata. Kita akan membuat aplikasi sederhana. Aplikasi ini mengisi lembar Excel dengan data dari variabel array. Dalam contoh Array VBA ini, kita akan melakukan hal-hal berikut.

  • Buat yang baru Microsoft Buku kerja Excel dan simpan sebagai Buku Kerja Excel yang Diaktifkan Makro (*.xlsm)
  • Tambahkan tombol perintah ke buku kerja
  • Atur properti nama dan keterangan tombol perintah
  • Memprogram VBA yang mengisi lembar Excel

Mari lakukan latihan ini selangkah demi selangkah,

Langkah 1 โ€“ Buat buku kerja baru

  1. Open Microsoft Excel
  2. Simpan buku kerja baru sebagai VBA Arrays.xlsm

Langkah 2 โ€“ Tambahkan tombol perintah

Catatan: Bagian ini mengasumsikan Anda sudah familiar dengan proses pembuatan antarmuka di excel. Jika Anda belum familiar, baca tutorialnya Kontrol Formulir VBA Excel & Kontrol ActiveX. Ini akan menunjukkan cara membuat antarmuka

  1. Tambahkan tombol perintah ke lembar

Gunakan Array di Excel VBA

  1. Setel properti nama menjadi cmdLoadBeverages
  2. Atur properti keterangan ke Muat Minuman

GUI Anda sekarang seharusnya seperti berikut

Gunakan Array di Excel VBA

Langkah 3 โ€“ Simpan file

  1. Klik tombol simpan sebagai
  2. Pilih Buku Kerja Excel yang Diaktifkan Makro (*.xlsm) seperti yang ditunjukkan pada gambar di bawah

Gunakan Array di Excel VBA

Langkah 4 โ€“ Tulis kodenya

Kami sekarang akan menulis kode untuk aplikasi kami

  1. Klik kanan pada tombol Muat Minuman dan pilih lihat kode
  2. Tambahkan kode berikut ke acara klik cmdLoadBeverages
Private Sub cmdLoadBeverages_Click()
    Dim Drinks(1 To 4) As String

    Drinks(1) = "Pepsi"
    Drinks(2) = "Coke"
    Drinks(3) = "Fanta"
    Drinks(4) = "Juice"

    Sheet1.Cells(1, 1).Value = "My Favorite Beverages"
    Sheet1.Cells(2, 1).Value = Drinks(1)
    Sheet1.Cells(3, 1).Value = Drinks(2)
    Sheet1.Cells(4, 1).Value = Drinks(3)
    Sheet1.Cells(5, 1).Value = Drinks(4)
End Sub

SINI,

Code Tindakan
Minuman Redupkan (1 Sampai 4) Sebagai Tali
  • Ia mendeklarasikan variabel array yang disebut Drinks. Indeks array pertama adalah 1 dan indeks array terakhir adalah 4.
Minuman(1) = โ€œPepsiโ€
  • Menetapkan nilai Pepsi ke elemen array pertama. Kode serupa lainnya melakukan hal yang sama untuk elemen lain dalam array.
Sheet1.Cells(1, 1).Value = โ€œMinuman Favorit Sayaโ€
  • Menuliskan nilai Minuman Favoritku di alamat sel A1. Sheet1 membuat referensi ke sheet, dan Cells(1,1) membuat referensi ke baris nomor 1 dan kolom 1 (B)
Sheet1.Sel(2, 1).Nilai = Minuman(1)
  • Menuliskan nilai elemen array dengan indeks 1 pada baris nomor dua kolom 1

Menguji aplikasi kami

Setelah kode terpasang, langkah terakhir adalah menjalankan tombol dan memastikan array mengisi lembar kerja. Pilih tab pengembang dan pastikan tombol Mode Desain dalam keadaan "mati". Indikatornya adalah tombol tersebut akan memiliki latar belakang putih dan bukan latar belakang berwarna (kehijauan). (Lihat gambar di bawah)

Menguji Aplikasi di Excel VBA

Klik tombol Muat Minuman

Anda akan mendapatkan hasil berikut ini

Menguji Aplikasi di Excel VBA

Unduh Excel yang berisi kode di atas

Unduh file Excel di atas. Code

Pertanyaan Umum Demo Slot

Array statis memiliki ukuran tetap yang ditetapkan saat deklarasi, seperti Dim Arr(12). Array dinamis dideklarasikan kosong dengan Dim Arr() dan diubah ukurannya kemudian menggunakan ReDim ketika jumlah elemen tidak diketahui sebelumnya.

ReDim mengatur atau mengubah ukuran array dinamis setelah dideklarasikan. Menambahkan kata kunci Preserve, seperti pada ReDim Preserve Arr(10), mempertahankan nilai yang ada saat mengubah ukuran; tanpa Preserve, semua nilai yang tersimpan akan dihapus.

Gunakan fungsi LBound dan UBound. LBound mengembalikan indeks terendah dan UBound mengembalikan indeks tertinggi. Jumlah elemen sama dengan UBound(Arr) dikurangi LBound(Arr) ditambah satu, yang berlaku untuk array statis maupun dinamis.

Ya. Asisten AI seperti Copilot menghasilkan deklarasi array dan perulangan dari permintaan biasa, misalnya memuat sepuluh nama produk ke dalam sebuah kolom. Pengembang menempelkan kode tersebut ke editor dan mengujinya pada salinan buku kerja.

Ya. Asisten AI membaca kesalahan "Subscript out of range" dan kode, kemudian menunjuk ke indeks yang melebihi batas array dan menyarankan perbaikan, seperti menyesuaikan ukuran ReDim atau penghitung loop. Pengembang menerapkan dan mengujinya kembali.

Ringkaslah postingan ini dengan: