Sunday, 25 June 2017

Array VBA: Dinamis, Multidimensional dengan Contoh di Excel

Apa itu Array?

Array adalah lokasi memori yang mampu menyimpan lebih dari satu nilai. Nilai semua harus dari tipe data yang sama. Katakanlah Anda ingin menyimpan daftar minuman favorit Anda dalam satu variabel, Anda dapat menggunakan array untuk melakukan itu.
Dengan menggunakan array, Anda bisa merujuk ke nilai terkait dengan nama yang sama. Anda bisa menggunakan indeks atau subskrip untuk membedakannya. Nilai individu disebut elemen dari array. Mereka bersebelahan dari indeks 0 melalui nilai indeks tertinggi.
Tutorial ini mengasumsikan Anda menggunakan Microsoft Excel versi 2013. Pengetahuan masih berlaku untuk versi Microsoft Excel lainnya juga.
Dalam tutorial ini, Anda akan belajar-

 

Apa Keuntungan dari array?

Berikut adalah beberapa keuntungan yang ditawarkan oleh array
  1. Kelompokkan data terkait secara logis - misalkan Anda ingin menyimpan daftar siswa. Anda dapat menggunakan variabel array tunggal yang memiliki lokasi terpisah untuk kategori siswa yaitu taman yang bagus, sekolah dasar, sekolah menengah, sekolah menengah atas, dll.
  2. Array memudahkan menulis kode yang mudah dipelihara. Untuk data terkait logis yang sama, ini memungkinkan Anda menentukan variabel tunggal, bukan mendefinisikan lebih dari satu variabel.
  3. Kinerja yang lebih baik - setelah sebuah array didefinisikan, lebih cepat untuk mengambil, mengurutkan, dan memodifikasi data.

Jenis array

VBA mendukung dua jenis array yaitu;
  • Statis - Jenis array ini memiliki sejumlah elemen yang telah ditentukan sebelumnya yang dapat disimpan. Seseorang tidak dapat mengubah ukuran tipe data Static Array. Ini berguna bila Anda ingin bekerja dengan entitas yang dikenal seperti jumlah hari dalam seminggu, jenis kelamin, dll. Sebagai contoh : Dim ArrayMonth (12) Sebagai String
  • Dinamis - Jenis array ini tidak memiliki sejumlah elemen yang telah ditentukan sebelumnya yang dapat disimpan. Ini berguna saat bekerja dengan entitas yang tidak dapat Anda tentukan sebelumnya. Sebagai contoh : Dim ArrayMonth (12) Sebagai Variant
Sintaks untuk mendeklarasikan array
Susunan statis
Sintaks untuk mendeklarasikan array STATIC adalah sebagai berikut:
  Dim arrayName (n) sebagai datatype 
SINI,
Kode Tindakan
Dim arrayName (n) datatype
  1. Ini mendeklarasikan variabel array yang disebut arrayName dengan ukuran n dan datatype. Ukuran mengacu pada jumlah elemen yang dapat disimpan oleh array.
Array dinamis
Sintaks untuk mendeklarasikan susunan DINAMIS adalah sebagai berikut:
  Dim arrayName () sebagai datatype
 ReDim arrayName (4) 
SINI,
Kode Tindakan
Dim arrayName () datatype
  1. Ini mendeklarasikan variabel array yang disebut arrayName tanpa menentukan jumlah elemen
ReDim arrayName (4)
  1. Ini menentukan ukuran array setelah array didefinisikan.
Dimensi Array
Array bisa satu dimensi, dua dimensi atau multidimensi.
  • Satu dimensi : Dalam dimensi ini, array hanya menggunakan satu indeks. Misalnya, sejumlah orang dari setiap umur.
  • Dua dimensi : Dalam dimensi ini, array menggunakan dua indeks. Misalnya, sejumlah siswa di setiap kelas. Ini membutuhkan jumlah kelas dan nomor siswa di setiap kelas
  • Multi-dimensi : Dalam dimensi ini, array menggunakan lebih dari dua indeks. Misalnya, suhu di siang hari. (30, 40, 20).Array VBA ditunjukkan dengan Contoh
Kami akan membuat aplikasi sederhana. Aplikasi ini mengisi lembar Excel dengan data dari variabel array. Dalam contoh ini, kita akan melakukan hal-hal berikut.
  • Buat buku kerja Microsoft Excel yang baru dan simpan sebagai Excel Macro-Enabled Workbook (* .xlsm)
  • Tambahkan tombol perintah ke buku kerja
  • Tetapkan nama dan keterangan dari tombol perintah
  • Tuliskan kode yang mengisi lembar Excel
Biarkan latihan ini selangkah demi selangkah,
Langkah 1 - Buat buku kerja baru
  1. Buka 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 tidak asing lagi, bacalah tutorial VBA Subroutine and Functions . Ini akan menunjukkan cara membuat antarmuka
  1. Tambahkan tombol perintah ke sheet
VBA Arrays
  1. Tetapkan nama properti ke cmdLoadBeverages
  2. Tetapkan properti caption ke Load Beverages
GUI Anda sekarang harus menjadi seperti berikut
VBA Arrays
Langkah 3 - Simpan file
  1. Klik tombol save as
  2. Pilih Excel Macro-Enabled Workbook (* .xlsm) seperti yang ditunjukkan pada gambar di bawah ini
VBA Arrays
Langkah 4 - Tulis kode
Sekarang kita akan menulis kode untuk aplikasi kita
  1. Klik kanan pada tombol Load Beverages dan pilih view code
  2. Tambahkan kode berikut ke acara klik cmdLoadBeverages
 Private Sub cmdLoadBeverages_Click ()
     Dim Drinks (1 sampai 4) Sebagai String
     
     Minuman (1) = "Pepsi"
     Minuman (2) = "Coke"
     Minuman (3) = "Fanta"
     Minuman (4) = "Juice"
     
     Sheet1.Cells (1, 1) .Value = "Minuman Favoritku"
     Sheet1.Cells (2, 1) .Value = Minuman (1)
     Sheet1.Cells (3, 1) .Value = Minuman (2)
     Sheet1.Cells (4, 1) .Value = Minuman (3)
     Sheet1.Cells (5, 1) .Value = Minuman (4)
 End Sub
SINI,
Kode Tindakan
Dim Drinks (1 sampai 4) Sebagai String
  • Ini mendeklarasikan variabel array yang disebut Drinks. Indeks array pertama adalah 1 dan indeks array terakhir adalah 4.
Minuman (1) = "Pepsi"
  • Tetapkan nilai Pepsi ke elemen array pertama. Kode serupa lainnya sama untuk elemen lain dalam array.
Sheet1.Cells (1, 1) .Value = "Minuman Favoritku".
  • Menuliskan nilai Minuman Favorit Saya di alamat sel A1. Sheet1 membuat referensi ke sheet, dan Cells (1,1) membuat referensi ke baris nomor 1 dan kolom 1 (B)
Sheet1.Cells (2, 1) .Value = Minuman (1)
  • Menuliskan nilai elemen array dengan indeks 1 untuk mengurutkan nomor dua dari kolom 1

Menguji aplikasi kita

Pilih tab pengembang dan pastikan tombol mode Desain "nonaktif". Indikatornya adalah, ia akan memiliki latar belakang putih dan bukan latar belakang berwarna (kehijauan). (Lihat gambar di bawah)
VBA Arrays
Klik tombol Load Beverages
Anda akan mendapatkan hasil sebagai berikut
VBA Arrays
Download Excel yang berisi kode diatas
 
Ringkasan
  1. Array adalah variabel yang mampu menyimpan lebih dari satu nilai
  2. VBA mendukung array statis dan dinamis
  3. Array memudahkan penulisan kode yang mudah dipelihara dibandingkan dengan mendeklarasikan banyak variabel untuk data yang berhubungan secara logis.


EmoticonEmoticon