Belajar Macro VBA 02: Memahami Object Excel

Share This Post

Seperti yang sudah kita tahu, Macro adalah serangkaian perintah atau tindakan yang dapat disimpan. Perintah-perintah ini dibuat dalam bahasa pemrograman yang disebut Visual Basic for Application, disingkat VBA. Bahasa pemrograman dalam VBA adalah bahasa yang berorientasi pada object atau disebut OOP (Object Oriented Programming). Kita harus memahami lebih dulu seperti apa konsep OOP ini, agar bisa memahami kode-kode yang ada di dalamnya.

Dalam konsep OOP, aplikasi Excel dilihat sebagai kumpulan dari object-object. Yang paling jelas kita lihat, tentu saja ada object Workbook (file excel itu sendiri), Worksheet (yaitu lembar kerja yang berisi sel-sel dalam bentuk baris-kolom-grid), Range (yaitu kumpulan sel yang membentuk grid). Contoh object yang lain, misalnya: Font, Chart, Name, Pivot Table, dan seterusnya.

Setiap object memiliki member yang disebut Property, Action, dan Event.

  • Property dapat dianalogikan sebagai sifat atau data (atau properti) yang dimiliki oleh sebuah object.
  • Action menggambarkan aksi yang bisa dilakukan oleh sebuah object.
  • Event adalah respon object atas sebuah kondisi atau aksi.

Agar lebih jelas, berikut akan kita bahas beberapa object yang paling sering dipakai pada Excel dan bagaimana memrogramnya dalam VBA.

Object Property

Kita akan mencoba property pada Object Range. Sesuai dengan namanya, Range adalah object yang berkaitan dengan satu atau sekelompok sel. Sebagai sel Excel, properti yang sering diakses adalah:

 

Property Keterangan
Value Mengakses Nilai yang ada di dalam cell
Text Menghasilkan nilai yang tampak di Cell (String)
Count Menunjukan jumlah Cell yang ada pada Range
Row Menunjukan nomor baris untuk Cell tunggal
Column Menunjukan Nomor kolom untuk Cell tunggal
Address Menampilkan alamat Cell absolut
HasFormula Menghasilkan TRUE jika Cell memiliki rumus, atau FALSE jika cell tidak memiliki rumus
Font Mengakses Font Object dari sebuah cell
Interior Mengakses Interior Object dari sebuah cell (Interior: warna dan border)

Kita akan mencoba untuk mengakses property Range dengan menggunakan jendela Immediate yang ada di VBE.

  1. Buka file latihan: 02 Memahami Object di Macro VBA.xlsm (File dapat didownload di bagian bawah tutorial ini).
  2. Pilih tab Developer, kemudiah tombol Visual Basic.
  3. tab developer macro vba excel
  4. Jika tab Developer belum tampil, silahkan akses tutorial di link ini:

    Cara Mengaktifkan dan Membuat Macro di Excel dengan Cara Merekam

  5. Atur layar kerjanya supaya tampak seperti di bawah ini. Sebelah kiri adalah layar Visual Basic, sedangkan dikanan adalah layar Worksheet. Kita akan menulisakan kode untuk merubah beberapa property dari sel di Worksheet (sebelah kanan).
  6. jendela vba - worksheet
  7. Pada jendela Immediate, kita masukan perintah-perintah berikut:
  8. kode jendela immediate vba macro excel
  9. Hasil dari code di atas adalah
  10. code immediate vba macro excel

Penjelasan untuk kode tersebut adalah sebagai berikut:

Range("A1").Value = "Sales Report 2003"
Range(“A1”) merujuk pada object Range, di alamat A1
.Value mengakses/mengisi properti Value
= “Sales Report 2003” nilai yang dimasukan ke properti Value adalah teks tersebut
Range("B4").Value = 100000   ‘mengisi Range B4 dengan nilai 100000
Range("A3:B3").Interior.ColorIndex = 36 ‘mengisi properti ColorIndex dengan warna nomor 36
Range("A4:A15").Font.Bold = true    ‘mengisi properti Bold menjadi True

Selain mengisi nilai tertentu pada properti sebuah object, jendeal Immediate bisa juga dipakai untuk mengambil isi dari properti. Caranya dengan memasukan ‘tanda-tanya – ?’ di depan perintah yang dimasukan.

Masukan perintah seperti di bawah ini pada jendela immediate

?Range(“A1”).Value

Perintah akan menampilkan isi property Range(“A1”).Value yaitu

Sales Report 2003

Masukan beberapa contoh lain seperti gambar di bawah.

perintah dan jawaban di immediate macro vba

Object Action

Seperti telah dibahas sebelumnya, object Action menggambarkan aksi yang bisa dilakukan oleh sebuah object. Kita akan menggunakan object Range sebagai contoh.

Masukan perintah pada jendela immediate:

Range(“A3:B15”).Select

Select adalah contoh object Action untuk melalukan select pada range/kelompok sel tertentu. Hasilnya sebagai berikut.

contoh action select pada range macro vba

Masukan perintah berikutnya:

Range("A3:B15").Copy Destination:=Range("D3")

Copy adalah Action untuk melakukan copy dari suatu Range ke lokasi lain. Destionation adalah parameter untuk action tersebut. Hasilnya adalah sebagai berikut.

copy destination action macro vba

Object Event

Event adalah respon dari sebuah object atas kondisi tertentu. Untuk contoh Event, kita ambil dari Object Worksheet. Kita buka lebih dulu layar kode untuk Worksheet.

Ikuti langkah berikut:

  1. Klik kanan Worksheet, pilih View Code
  2. klik kanan tab worksheet view code
  3. Pada layar kode, pilih Worksheet
  4. Kemudian prosedure Selection Change
  5. klik kanan tab worksheet view code
  6. Masukan kode berikut antara Private Sub Worksheet_SelectionChange … dan End Sub
  7. code event for cell macro vba
  8. Penjelasan kode tersebut adalah: Setiap kita melakukan seleksi sel (Event: SelectionChange) pada Worksheet, maka MsgBox akan dipanggil untuk menampilkan Target.Address.
  9. selection change event worksheet macro vba

Demikianlah penjelasan singkat tentang object beserta property, action, dan event-nya. Semoga bermanfaat. Sampai jumlah di tutorial macro vba selanjutnya. Chaw.

File latihan: 02 Memahami Object di Macro VBA

 

Subscribe To Our Newsletter

Get updates and learn from the best

More To Explore

Melakukan Grouping di Pivot Table

Pivot Table adalah salah satu fitur paling powerful dalam Microsoft Excel. Salah satu kemampuan yang sangat berguna dalam Pivot Table adalah grouping atau pengelompokan data

Do You Want To Boost Your Business?

drop us a line and keep in touch