Pengenalan VBA
Apa itu VBA
VBA, yang merupakan singkatan dari Visual Basic for Applications, adalah sebuah bahasa
pemrograman dikembangkan oleh Microsoft untuk bekerja dengan Microsoft Office. Singkatnya, VBA
adalah alat yang kita gunakan untuk mengembangkan program-program yang akan mengontrol Excel
sehingga excel akan melakukan apapun yang kita perintahkan secara cepat dan akurat
Melakukan suatu pekerjaan yang berulang-ulang, contoh membikin konfirmasi, jika tanpa
VBA mungkin kita harus membuat lampiran secara manual untuk tiap KPP, trus membuat surat
juga untuk tiap KPP, abis itu juga mem-printnya, namun dengan VBA anda cukup menyediakan
data serta template dari surat dan lampiran maka dengan satu kali klik seketika juga akan selesai
2.
Mengotomasikan suatu pekerjaan yang komplex, contoh membuat suatu laporan keuangan
dari ledger, kalo tanpa VBA mungkin melibatkan banyak sekali pekerjaan namun dengan VBA
pekerjaan tadi diringkas jadi satu program dan bisa dipakai untuk tahun berikutnya bahkan Data
WP yang lain sepanjang format datanya telah disesuaikan
3.
Membuat customize command yang kalo memakai excel melibatkan beberapa kali perintah,
kemudian anda bikinkan pula tombol atau menu sehingga memudahkan kita dalam pekerjaan
sehari2
4.
Menciptakan fungsi baru, misalnya fungsi penghitungan PPh 25, atau mengubah angka
menjadi terbilang (mis: 1250 menjadi seribu dua ratus lima puluh rupiah)
5.
Menciptakan Ad-in yaitu pelengkap dari excel yang bisa berupa menu2 yang tidak ada di
excel, yang dapat dikomersialkan. Misalnya : ASAP Utilities, Power Utilities, dll
6.
Menciptakan satu aplikasi yang lengkap, beserta template, menu, toolbar, dialog box maupun
Help yang lengkap, misalnya GL for excel, Audit for excel, dll
1.
Excel akan mengeksekusi semua perintah yang diperintah dalam urutan yang sama/
konsisten
2.
Excel akan melaksanakan semua perintah tadi dengan kecepatan yang jauh lebih cepat
daripada dilakukan secara manual/
3.
Dengan pemrograman yang baik maka perintah2 tadi bisa dibuat tanpa error
4.
Bisa dilakukan oleh orang yang memiliki pengetahuan excel yang rendah, yang penting tekan
tombol/menu yang diberikan
5.
Bisa melakukan yang tidak bisa dilakukan dengan excel secara manual . misal membuat
games di excel
6.
Untuk pekerjaan-2 yang memakan waktu , VBA bisa melakukannya tanpa kita perlu nungguin
Kekurangan VBA
1.
2.
Orang yang ingin memakai program VBA yang kita buat harus memiliki software excel yang
sesuai versinya
3.
4.
Excel selalu berkembang sehingga program yang kita buat harus menyesuaikan dengan
perkembangan software excel
Kita melakukan sesuatu di VBA baik merekam maupun menulis kode di VBE (Visual Basic
Editor)
VBA terdiri dari Sub Prosedure (kumpulan kode yang melakukan aksi atas suatu obyek) serta
Fungsi (kumpulan kode yang menghasilkan suatu nilai)
VBA memanipulasi Obyek, didalam excel terdapat ratusan obyek yang dapat kita perintah
atau kita ubah nilainya , contoh obyek yang paling sering kita pakai antara lain: Workbook,
Worksheet, range, chart, dll
Obyek dalam excel disusun secara hierarki, artinya didalam satu obyek bisa terdiri dari
beberapa obyek yang lain, Obyek yang paling tinggi adalah aplikasi excel sendiri yang disebut
Application. Didalam Application terdapat obyek lain antara lain seperti workbook obyek dan
add-in obyek , didalam workbook obyek terdapat worksheet obyek, dst. Untuk menunjuk ke suatu
range dapat dipergunakan cara sebagai berikut
Jika kita tidak menyebutkan secara rinci maka excel akan menganggap bahwa obyek yang dimaksud
adalah yang aktif
Jika kita tahu kalo book1.xlsx adalah workbook yang aktif maka kita cukup menulis
Worksheets(Sheet1).Range(A1)
Jika kita tahu kalo Sheet1 adalah sheet yang aktif maka kita cukup menulis
Range(A1)
Obyek memiliki Method, Properties, serta Event. Method adalah action yang akan dilakukan
oleh obyek tersebut misalnya obyek workbook memiliki Open,Save Method
Properties adalah setting yang dimiliki oleh Obyek, Misalnya Workbook memiliki properties
Name,Path, Saved
Events adalah peristiwa yang terjadi pada suatu obyek, misalnya workbook memiliki
Before_save, Before_save, Activate event
VBA memiliki konstruksi seperti bahasa pemrograman modern karena merupakan turunan dari bahasa
Visual basic yang sangat terkenal, sehingga kita bisa melakukan banyak hal2 ajaib seperti membuat
browser didalam excel atau pemutar film dan MP3
Untuk melihat Contoh dari pemrograman VBA kita bisa pelajari step by step dari program Hello World
Hello world
Program ini adalah program standard yang selalu dipakai dibahasa mana saja, bagi pemula karena
sangat sederhana namun karena sudah merupakan tradisi ya kita ikuti aja
Program ini kalau dijalankan akan tampil sbb:
Program ini akan menampilkan sebuah window yang ada tombolnya, yang jika tombol tersebut kita klik
maka akan muncul kotak dialog dengan tulisan Hello World
Disini kita akan :
1.
2.
3.
Langkah-2nya
1.
2.
3.
4.
Ingat harus disave sebagai Excel macro enabled workbook (*.xlsm), jika disimpan
sebagai xlsx maka macro akan dihapus oleh excel
5.
Developer >Visual
Basic
6.
7.
8.
9.
10.
11.
12.
13.
klik saja pada window Userform1 lalu seret/gambar kotak sesuai keinginan anda
lalu lepas klik anda
14.
jika bentuk dan posisi commandbutton tidak sesuai kita klik dan drag
commandbutton tadi sesuai keinginan kita
15.
16.
17.
cmdHelloworld
18.
19.
Pengubahan nama berfungsi agar program lebih mudah dipahami (awalan cmd
berarti commandbutton)
20.
Caption/ Text pada commandbutton kita ganti menjadi Hello World (ini juga bisa
kita langsung edit di window userform1)
21.
Untuk mengubah jenis/size maupun effek lain pada commandbutton kita klik di
bagian font pada kotakkecil berisi 3 titik (baru muncul jika bagian font diklik)
22.
Kalau sudah puas dengan visualnya maka baru kita isi dengan code
23.
24.
25.
Code
26.
27.
Akan muncul window code sesuai dengan Obyek yang kita klik tadi yaitu
helloword.xlsm Userform1
28.
29.
30.
Event click terjadi jika suatu Obyek diklik kiri (default click)
31.
Semua code yang berada diantara sub cmdhelloword_click dan End Sub akan
dieksekusi jika tombol diklik
32.
33.
Kita tulis diantaranya dengan perintah msgbox (artinya message box yaitu suatu
kotak peringatan yang berisi teks yang kita isikan sebagai parameter)
34.
Code Lengkapnya :
Untuk menjalankannya kita aktifkan jendela userform1 lalu klik toolbar Run
ini hasilnya
Cara lain yaitu kita buatkan macro/prosedur untuk menampilkan form tadi
1.
2.
3.
4.
5.
Kita ketik Sub Helloworld lalu enter maka otomatis end sub akan muncul
6.
7.
userform1.show
8.
lengkapnya adalah
9.
Sub HelloWorld()
UserForm1.Show
End Sub
10.
11.
12.
13.
14.
Run
15.
16.
atau
17.
18.
19.
20.
21.
Klik Add, lalu akan muncul nama Helloworld dikotak sebelah kanan
22.
23.
24.
25.
26.
27.
28.
29.
Selesai.