VBA Excel: Mengenal Object, Property dan Event

Agar dapat memanfaatkan Excel lebih jauh dengan VBA (Visual Basic for Application), tentunya kita perlu tahu objek apa yang ingin kita olah. Apakah itu warna pada cell? Menu pada ribbon? Dan seterusnya.

Artikel berikut ini mencoba menjelaskan dengan simpel apa yang perlu kita perhatikan dari pengolahan object di Excel. Pada akhir artikel akan diberikan link langkah demi langkah pengerjaan latihan, sehingga Anda akan lebih memahami apa yang telah disampaikan. Semoga bermanfaat !

Object

Object atau objek secara sederhana merupakan elemen yang menjadi bagian dari dokumen Excel. Tiap objek memiliki tipenya sendiri, bisa berupa tombol, cell, worksheet, dokumen workbook, dan banyak lagi tipe lainnya.

Contoh-contoh Objek (klik untuk memperbesar gambar)

Nama Objek

Tiap objek harus memiliki nama agar kita dapat kemudian menjadikannya sebagai referensi untuk diolah lebih lanjut. Nama tiap objek dapat dilihat pada kotak Name Box ketika kita aktif berada pada object tersebut.

Kotak Name Box menunjukkan nama objek button (Button4)
Download file Excel yang ditunjukkan pada gambar contoh tersebut disini.

Hirarki dan Level Object

Tiap objek pada dokumen Excel kita harus berada pada level tertentu dari suatu hirarki. Ini ada kaitannya dimana suatu objek biasanya menjadi bagian dari objek lain yang lebih besar.

Sebagai contoh, objek tombol Button4 merupakan bagian dari objek worksheet Sheet1.

Penulisan Nama Objek

Agar dapat digunakan, penulisan nama object harus memperhatikan level hirarki. Beberapa contoh penulisannya adalah sebagai berikut.
  • Worksheets("Sheet1")
  • Sheet1
  • Sheet1.Range("B4")
  • Sheet1.Shapes("Button4")
  • Worksheets("Sheet1").Shapes("Button4")
Mungkin sampai disini Anda sangat bingung bagaimana mengetahui penulisan yang harus menggunakan tipe Worksheets, Shapes, dll. Ditambah lagi penulisan nama ini kadang diapit dengan tanda kutip, dan kadang tidak. Pada kesempatan ini, penulis tidak akan membahas terlalu jauh dulu karena terkait konsep lain, jika Anda ingin meminta penjelasan lebih jauh, silahkan bergabung ke user group kami Facebook kami di http://goo.gl/TWjyub.

Yang perlu diperhatikan pada penulisan di atas adalah tanda titik yang menunjukkan level antara objek satu dengan objek lainnya. Sebagai contoh, penulisan objek Shapes("Button4") setelah tanda titik dari Worksheets("Sheet1") menunjukkan bahwa Button4 merupakan bagian dari Sheet1.

Property

Selanjutnya, tiap object memiliki banyak property yang menentukan karakteristik objek tersebut, misalkan warna, posisi, format, dan lainnya. Nama object sendiri sebenarnya adalah salah satu property. Tiap property memiliki nilai. Nilai ini ada yang bisa dirubah dan ada yang tidak bisa dirubah melalui kode program kita.

Penulisan Nama Property

Nama property ditulis di belakang objek dengan pemisahan tanda titik. Berikut adalah beberapa contoh penulisan nama property.
  • Sheet1.Range("A1").Interior.Color
  • Sheet1.Shapes("Button4").Width

Event

Setelah kita mengetahui object dan property-nya, pertanyaan berikutnya adalah bagaimana kalau kita melakukan sesuatu terhadap object tersebut? Bagaimana kita menentukan apa yang harus dilakukan sebagai reaksinya?

Inilah yang kita namakan dengan event atau peristiwa. Tiap event juga memiliki nama, dan bisa disisipkan potongan kode yang kita inginkan sebagai reaksi terhadap peristiwa tersebut.

Beberapa event antara lain:
  • Event click, ketika terjadi klik pada objek tersebut.
  • Event change, ketika terjadi perubahan pada objek tersebut.

Latihan VBA

Untuk mengerti lebih lanjut mengenai konsep-konsep di atas, cobalah lakukan praktek latihan VBA pada halaman http://soal-latihan.belajarexcel.info/2013/10/praktek-vba-merubah-warna-cell-secara-acak.html.

Semoga bermanfaat !


VBA: Fungsi Warna RGB

Pada VBA, pewarnaan cell ataupun objek lainnya sering menggunakan fungsi yang bernama RGB. Pada artikel berikut akan dijelaskan mengenai apa itu RGB dan bagaimana mencari nilai warna yang tepat untuk fungsi ini.

Apa itu RGB?

RGB adalah singkatan dari RedGreen dan Blue, (Merah, Hijau dan Biru). Kombinasi 3 warna cahaya ini akan membentuk semua warna yang bisa kita lihat - dengan berbagai intensitas yang berbeda. Tiap nilai intensitas akan diwakili angka dari 0 s/d 255.

Dan fungsi RGB pada VBA akan menerima nilai ini pada 3 parameter dengan urutan warna sesuai dengan namanya. Berikut adalah 2 contoh penggunaan fungsi RGB:
  • RGB(123,30,20)
  • RGB(255,255,255)

Mencari Nilai-nilai RGB

Kita sudah mengerti fungsi tersebut, pertanyaan selanjutnya adalah bagaimana memasukkan nilai-nilai tersebut untuk mendapatkan warna yang kita inginkan?

Jangan bingung, karena tiap dialog warna pada Excel memiliki informasi tersebut. Berikut adalah contoh pencarian nilai RGB menggunakan dialog warna text.
  • Pada tab Home, klik panah bawah pada icon Font Color, setelah itu pilih menu More Colors....

  • Pada dialog Colors, klik tab Custom. Pastikan Color model yang terpilih adalah RGB.
  • Klik warna yang diinginkan pada layar spektrum warna dan intensitas yang ada. Nilai R,G dan B akan muncul dan siap digunakan pada rumus RGB.

    Pada contoh gambar di bawah ini, warna ungu yang digunakan akan memiliki nilai fungsi RGB(163, 25, 143).

  • Selesai.


3 Cara Menghitung Nilai Pangkat di Excel

1. Menggunakan Operator ^

Gunakan bilangan pokok diikuti operator ^ dan angka pangkat.

Contoh Penggunaan pada Excel:
  • =4^2
  • =5^3

2. Menggunakan Fungsi POWER

Gunakan fungsi POWER dengan syntax sebagai berikut:

=POWER(bilangan pokok, bilangan pangkat)

Contoh Penggunaan pada Excel:
  • =POWER(4, 2)
  • =POWER(5,3)

3. Menggunakan Fungsi Logaritma Alami

Gunakan fungsi logaritma alami dengan syntax sebagai berikut:

=EXP(bilangan pangkat * LN(bilangan pokok)

Contoh Penggunaan pada Excel:
  • =EXP(2 * LN(4))
  • =EXP(3 * LN(5))


Cara Mengaktifkan Solver pada MS Excel 2010

Solver adalah add-in pada Excel yang sangat berguna dalam memecahkan masalah-masalah optimasi. Dan ini dapat mendukung pengambilan keputusan dengan cepat. Namun secara default, add-ini tidak diaktifkan sehingga Anda tidak dapat menggunakannya.

Berikut adalah langkah-langkah untuk mengaktifkan Solver pada Excel 2010.

  1. Klik tab File, pilih Options.
  2. Pada dialog Excel Options, pilih Add-Ins.
  3. Pastikan pada bagian Manage terpilih Excel Add-Ins. Ini merupakan paket add-in dimana Solver berada. Klik tombol Go....

  4. Dialog Add-Ins akan muncul, pastikan checkbox Solver add-in terpilih, klik tombol OK.

  5. Pada tab Data group Analysis sudah terdapat menu Solver yang dapat Anda panggil setiap saat.

  6. Selesai.

Contoh Cara Penggunaan "Format as Table"

Berikut adalah contoh dengan animasi penggunaan Format as Table. 


Klik pada gambar untuk memperbesar ukurannya.

Silahkan download contoh file Excelnya di https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/belajar-excel/format_table.xlsx.

Semoga bermanfaat !

Cara Membuat File CSV dengan Excel 2010

File CSV (Comma Separated Value) adalah file teks yang sering diminta oleh berbagai pihak untuk kepentingan laporan dan juga untuk dijadikan input bagi sistem lain.

Bagaimana cara menghasilkan file tersebut di Excel? Berikut adalah langkah-langkahnya.
  1. Download dan buka file Target_Penjualan_PHI_Minimart.xls dengan aplikasi Excel.

    File Excel Sumber (klik untuk memperbesar)
  2. Klik tab File.
  3. Klik menu Save As.
  4. Pada dialog Save As, masukkan nama file dan pada entri Save As Type pilih CSV (Comma delimited) (*csv). Klik tombol Save.

  5. Buka file yang telah Anda save tadi dengan Notepad, hasilnya akan terlihat seperti pada screenshot berikut.
    Hasil CSV (klik untuk memperbesar)
  6. Selesai.

Contoh Kasus: Mendapatkan Nilai Tertinggi dari Kumpulan Tanggal Yang Sama

Sering sekali dari suatu kumpulan data tanggal dan nilai, kita ingin mengambil nilai maksimum dari tanggal tersebut.

Sebagai contoh, dari data pada gambar berikut untuk tanggal 3 Oktober 2013 (10/3/2013) kita ingin mendapatkan nilai 212 sebagai nilai terbesarnya.

Nilai maksimum untuk tanggal 10/3/2013

Sedangkan untuk tanggal Y kita ingin mendapatkan YMax.

Nilai Maksimum untuk tanggal 8/16/2013
Berikut adalah contoh rumus array formula untuk mendapatkan max dari tanggal 10/3/2013 - diketik dulu rumusnya dan diakhiri penekanan tombol CTRL+SHIFT+ENTER. Rumus ini berlaku untuk kondisi data seperti pada gambar di atas.

=MAX(IF(B2:B10=DATEVALUE("10/3/2013"),D2:D10,0))

Dan jika kita menggunakan filter tanggal yang kita masukkan pada kolom F, maka kita masukkan formulanya kira-kira sebagai berikut (ingat diakhiri dengan penekanan tombol CTRL+SHIFT+ENTER).

=MAX(IF($B$2:$B$10=F2,$D$2:$D$10,0))

Penggunaan Formula dengan Filter pada kolom B (klik untuk memperbesar gambar)
Untuk Anda yang ingin mendownload filenya silahkan klik link di bawah ini, file tersebut terdapat di user group Facebook kami.

Array Formula - Mendapatkan Nilai Tertinggi dari Group Tanggal Yang Sama.xlsx

Semoga Bermanfaat !

Menghilangkan Garis Page Break di Excel 2010

Anda sering mengalami tampilan garis page break di Excel 2010 seperti pada gambar screenshot berikut dan ingin menghilangkannya? Ikuti langkah-langkah setelah tampilan gambar ini.

Garis Page Break
  1. Klik tab File.
  2. Klik menu Options.
  3. Pada dialog Excel Options, pilih Advanced pada panel kiri.
  4. Pada bagian Display options for this worksheet, pilih sheet yang diinginkan dan pastikan Show page breaks tidak dalam keadaan terpilih. Klik tombol OK.


  5. Tampilan garis page break akan hilang dari sheet Anda.
  6. Selesai.

Cara Menghitung Umur dengan Fungsi DATEDIF

DATEDIF adalah suatu fungsi pada Excel untuk menghitung perbedaan jarak antara kedua tanggal. Perhitungan yang sangat rumit ini - karena jumlah hari pada tiap bulan berbeda -  menjadi sangat sederhana dengan fungsi rumus ini.

Nah, pada artikel sebelumnya ditunjukkan cara yang cukup panjang untuk menghitung umur atau usia seseorang. Kali ini kita akan coba menggunakan rumus DATEDIF menghitung ulang usia seseorang berdasarkan tanggal lahirnya.

Syntax dari fungsi DATEDIF adalah sebagai berikut:

=DATEDIF(tanggal_1, tanggal_2, jenis_interval)

dimana:
  • tanggal_1 adalah tanggal awal.
  • tanggal_2 adalah tanggal akhir, dan tanggal akhir ini harus lebih besar nilainya dari tanggal_1.
  • jenis_interval adalah teks yang menyatakan jenis interval atau jarak tanggal yang diinginkan, terdiri dari:
    • d  :    menghitung total jarak hari secara keseluruhan.
    • m :    menghitung total jarak bulan secara keseluruhan.
    • y  : menghitung total jarak tahun secara keseluruhan.
    • md: menghitung total jarak hari secara pada bulan dan tahun yang sama.
    • yd: menghitung total jarak hari pada tahun yang sama.
    • ym: menghitung total jarak bulan pada tahun yang sama.
Sebagai contoh, kita akan menghitung umur untuk bayi yang lahir pada tanggal 21-Maret-2007 dengan tanggal hari ini (tanggal penulisan adalah 3 Oktober 2013). Dengan berbagai jenis interval maka penggunaan rumus dan hasilnya adalah sebagai berikut:
  • =DATEDIF("3/21/2007", today(),"d") akan menghasilkan nilai jarak total 2388 (hari)
  • =DATEDIF("3/21/2007", today(),"m") akan menghasilkan nilai jarak total 78 (bulan)
  • =DATEDIF("3/21/2007", today(),"y") akan menghasilkan nilai jarak total 6 (tahun)
  • =DATEDIF("3/21/2007", today(),"md") akan menghasilkan nilai jarak 12 (hari) dengan anggapan ada pada  bulan dan tahun yang sama.
  • =DATEDIF("3/21/2007", today(),"yd") akan menghasilkan nilai jarak 196 (hari) dengan anggapan ada pada tahun yang sama.
  • =DATEDIF("3/21/2007", today(),"ym") akan menghasilkan nilai jarak 6 (bulan) dengan anggapan ada pada tahun yang sama.
Dan berikut adalah contoh screenshot lengkap untuk perhitungan usia untuk berbagai jarak tanggal. File tersebut dapat Anda download di user group Facebook. Semoga bermanfaat.

Hasil Perhitungan Umur dengan Fungsi DATEDIF

Cara Menghitung Umur dengan Excel berdasarkan Tanggal Lahir

Menghitung UMUR dan USIA dari informasi tanggal lahir adalah salah satu yang sering ditanyakan kepada penulis baik pada sesi training maupun ditemukan di forum-forum online.

Perhitungan usia yang kelihatannya gampang ini ternyata cukup kompleks karena tidak seperti perhitungan numerik, tanggal memiliki jumlah hari tiap bulan yang berbeda-beda (28, 29, 30 dan 31).

Berikut adalah screenshot solusi dari BelajarExcel.info dengan berbagai kombinasi tanggal lahir dan tanggal pengamatan.  Hasil N/A adalah karena tanggal pengamatan lebih kecil dari tanggal lahir.

Solusi ini menggunakan rumus IF dan fungsi tanggal YEAR, MONTH dan DATE. Selain itu Anda dapat menggunakan DATEDIF, namun kami akan tunjukkan di artikel lain. File ini dapat Anda download di koleksi file Excel user group kami.

Hasil Final Perhitungan Usia (klik untuk memperbesar tampilan gambar)

Dan berikut adalah rumus lengkapnya untuk perhitungan umur berdasarkan tahun, bulan dan hari.

C3 = TANGGAL PENGAMATAN
B3 = TANGGAL LAHIR

RUMUS UNTUK TAHUN
=================
=IF(C3>=B3,
IF(
OR(AND(DAY(C3)<DAY(B3),OR(MONTH(C3)-1=MONTH(B3),MONTH(C3)=MONTH(B3))), MONTH(C3)<MONTH(B3)),
IF(YEAR(C3)>YEAR(B3),YEAR(C3)-YEAR(B3)-1,YEAR(C3)-YEAR(B3)),
YEAR(C3)-YEAR(B3)
)
,"N/A ") & " tahun"

RUMUS UNTUK BULAN
=================
=IF(C3>=B3,
 IF(
  DAY(C3)<DAY(B3),
 IF(MONTH(C3)>MONTH(B3),MONTH(C3)-MONTH(B3)-1, MONTH(C3)+11-MONTH(B3)),
 IF(MONTH(C3)>=MONTH(B3),MONTH(C3)-MONTH(B3), MONTH(C3)+12-MONTH(B3))
  ), "N/A") & " bulan"

RUMUS UNTUK MENCARI HARI
========================
=IF(C3>=B3,
IF(
DAY(C3)>=DAY(B3), 
DAY(C3)-DAY(B3), 
C3-DATE(YEAR(C3),MONTH(C3)-1,DAY(B3))
), 
"N/A ") & " hari"

Info Tambahan: Kombinasi tanggal yang digunakan untuk testing tersebut dibuat berdasarkan matrix berikut.


Launching E-BOOK EIUG: Form Entry Sederhana dengan Excel VBA

Pengunjung BelajarExcel.info Yang Saya Hormati, Pada tanggal 14 Juni 2014,Excel Indonesia User Group (EIUG) yang merupakan salah satu k...