Otodidak VBA MS Excel untuk Pemula
Otodidak VBA MS Excel untuk Pemula Jubilee Enterprise PENERBIT PT ELEX MEDIA KOMPUTINDO
Otodidak VBA MS Excel untuk Pemula Jubilee Enterprise 2017, PT Elex Media Komputindo, Jakarta Hak cipta dilindungi undang-undang Diterbitkan pertama kali oleh Penerbit PT Elex Media Komputindo Kelompok Gramedia, Anggota IKAPI, Jakarta 2017 anindita@elexmedia.id ID: 717051689 ISBN: 978-602-04-4743-8 Dilarang keras menerjemahkan, memfotokopi, atau memperbanyak sebagian atau seluruh isi buku ini tanpa izin tertulis dari penerbit. Dicetak oleh Percetakan PT Gramedia, Jakarta Isi di luar tanggung jawab percetakan
Ebgubs!Jtj! Kata Pengantar... v Daftar Isi... vii Bab 1 Mengenal Macro... 1 Setup Macro... 1 Membuat Folder Khusus... 1 Mengaktifkan Tab Developer... 2 Merekam Macro... 3 Menjalankan Macro Hasil Rekaman... 7 Menggunakan Tombol Shortcut... 8 Meletakkan Macro di dalam Quick Access Toolbar... 8 Membuka dan Mengedit Macro... 9 Menyimpan Workbook yang Mengandung Macro... 11 Bab 2 Visual Basic Editor... 13 Meluncurkan Visual Basic Editor... 13 Pengenalan Visual Basic Editor... 13 Project Explorer... 14 Menu Bar... 15 Toolbar... 15 Properties... 15 vii
Code... 16 Object Selector dan Event Selector... 17 Panel Toolbox... 17 Panel Object Browser... 17 Panel Immediate... 18 Langkah Awal Menulis Kode VBA di dalam Panel Code... 18 Mengatur Lingkungan Kerja Visual Basic Editor... 21 Tab Editor... 21 Tab Editor Format... 24 Bekerja dengan Menggunakan Object... 25 Mengenal Hierarki pada Sebuah Objek... 25 Mengenal Collections... 27 Cara Menulis Objects di dalam VBA... 27 Bekerja Menggunakan Application Object... 28 Memperpendek Script... 29 Bekerja Menggunakan Property... 30 Mengubah Property Sebuah Objects... 31 Menulis Langsung di dalam Script... 32 Mengubah Nilai Property Menggunakan Panel Properties... 32 Bekerja Menggunakan Methods... 34 Menggunakan List Properties/Methods... 35 Mengenal Menu File... 36 Mencetak Script dan UserForm... 37 Bab 3 Contoh-Contoh Macro Sederhana... 39 Macro Sederhana... 39 Bagaimana Macro di Atas Bekerja?... 41 Seleksi Sel... 42 viii
Seleksi Sel Tunggal... 42 Bagaimana Kode di Atas Bekerja?... 45 Seleksi Sel Ganda... 46 Bagaimana Kode di Atas Bekerja?... 47 Copy-Paste dalam Sel... 48 Bagaimana Kode di Atas Bekerja?... 50 Sheet dan Macro... 51 Mengaktifkan Sheet... 52 Bagaimana Kode di Atas Bekerja?... 53 Menggunakan Index... 53 Menggunakan Code Name... 55 Mengubah Code Name... 56 Membuat Sheet Baru... 57 Menggunakan Before dan After... 58 Penambahan Sheet Secara Massal... 59 Menghapus Worksheet... 60 Menghapus Tanpa Kotak Dialog Konfirmasi... 61 Mengopi dan Memindah Sheet... 62 Bagaimana Kode di Atas Bekerja?... 64 Mengopi Sheet ke dalam Workbook Baru... 64 Bab 4 Pengenalan Sub Procedure dan Function... 67 Membuat Sub Procedure... 67 Contoh Sub Procedure: Mewarnai Sel... 69 Membuat Function... 69 Aturan Pembuatan Nama Sub Procedure dan Function... 71 Menjalankan Sub Procedure... 72 Contoh Cara Menjalankan Sub Procedure... 74 ix
Menjalankan Function... 81 Menjalankan Function dengan Memanfaatkan Sub Procedure... 81 Menjalankan Function dengan Memanfaatkan Sheet... 83 Bab 5 Dasar-Dasar Pemrograman VBA... 85 Menulis Komentar di dalam VBA... 85 Bekerja dengan Variabel dan Konstanta... 87 Dasar-Dasar Pemahaman Variabel... 87 Aturan Pembuatan Variabel... 88 Menentukan Tipe Data... 89 Berbagai Jenis Tipe Data... 89 Mendeklarasikan Variable... 91 Mengenal Cakupan Variable... 91 Bekerja dengan Variable Berjenis Procedure Only... 92 Bekerja dengan Variable Berjenis Module Only... 92 Bekerja Menggunakan Variable Berjenis Public Variable... 92 Mengenal Static Variable... 93 Bekerja Menggunakan Konstanta... 93 Bekerja dengan String... 94 Bekerja dengan Date... 95 Operator-Operator VBA... 95 Operator Matematika... 95 Operator Perbandingan... 96 Operator Teks... 96 Assignment pada Sebuah Variable... 97 Bekerja dengan Menggunakan Arrays... 97 x
Contoh-Contoh Script VBA untuk Bekerja dengan Variable... 98 Membuat Bonus Penjualan... 99 Bab 6 Object Range... 101 Menggunakan Range... 101 Menggunakan Cells... 102 Menggunakan Offset... 103 Memilih Seluruh Baris dan Kolom... 104 Properti-Properti Penting di dalam Object Range... 104 Value... 104 Text Property... 105 Count Property... 106 Column dan Row... 106 Address... 106 HasFormula... 107 Font... 107 Interior... 107 Formula... 109 Mengenal Methods yang Ada di Range Object... 109 Select... 110 Copy-Paste... 110 Contoh-Contoh Script Praktis... 111 Menulis Teks ke dalam Salah Satu Sel... 111 Menulis Teks ke dalam Sel Menggunakan Range... 111 Menulis Teks di dalam Salah Satu Sel pada Sebuah Sheet yang Spesifik... 111 Membaca Data yang Ada di dalam Sebuah Sel dan Menampilkannya ke dalam Kotak Dialog... 112 xi
Menyeleksi Sel-Sel... 112 Copy-Paste Teks dari Satu Sel ke dalam Sel Lainnya... 113 Menghapus Data di dalam Sel... 113 Membersihkan Seluruh Data di dalam Sheet... 114 Bab 7 Fungsi-Fungsi VBA... 115 Function Siap-Pakai yang Disiapkan oleh VBA... 115 Function untuk Menampilkan Tanggal dan Waktu... 116 Function untuk Mendeteksi Panjang Teks... 116 Function untuk Membulatkan Angka... 118 Daftar Function yang Sering Dipakai... 119 Menggunakan Function untuk Sheet di dalam VBA... 122 Menggunakan MAX... 122 Menggunakan Function Buatan Sendiri... 124 Bab 8 Kondisional dan Pengulangan... 127 Menggunakan GoTo... 128 Menggunakan If-Then... 129 Menggunakan Else... 130 Menggunakan ElseIf... 131 Menggunakan Select Case... 132 Menggunakan For-Next... 133 Menggunakan Do-While Loop... 134 Menggunakan Do-Until Loop... 135 Bab 9 Berkomunikasi dengan Pengguna... 137 Menggunakan MsgBox... 137 xii
Menampilkan Informasi di dalam MsgBox... 138 Mengambil Tindakan Berdasarkan Respons... 138 Menghadirkan Tombol-Tombol di dalam MsgBox... 139 Melacak Respons Penekanan Tombol... 140 Contoh-Contoh Penggunaan MsgBox... 141 Menghapus Data dalam Range... 141 Menampilkan Nilai Tertinggi di dalam Sheet... 144 Menggunakan InputBox... 147 Dasar-Dasar Penggunaan InputBox... 148 Contoh-Contoh InputBox... 148 Membuat Input Data Nasabah... 148 Membuat Password Menggunakan InputBox... 152 Memanfaatkan GetOpenFileName... 154 Bab 10 UserForm... 157 Bekerja dengan UserForm... 157 Toolbox... 159 Mengenal Langkah-Langkah Dasar Perancangan UserForm... 162 Metode untuk Menampilkan UserForm... 165 Memasukkan Script VBA ke dalam UserForm... 168 Menggunakan Menu Format... 171 Mengaktifkan Toolbar UserForm... 175 Memanfaatkan Tab Order... 175 Tentang Penulis... 177 xiii
Mengenal Macro Macro merupakan sekumpulan perintah yang dapat dijalankan menggunakan berbagai metode, yaitu: Memanfaatkan tombol shortcut, Menggunakan control, dan Memakai penulisan formula di dalam formula bar. Macro sendiri merupakan sebuah cabang pemrograman, sehingga menguasai Macro memiliki arti yang sama dengan mempelajari pemrograman. Untuk membuat macro, kita membutuhkan script pemrograman bernama Visual Basic for Application atau biasa disingkat VBA. Setup Macro Agar proses mempelajari Macro menjadi lebih mudah dan tertata rapi, maka kita siapkan dahulu lingkungan kerja yang nyaman. Apa saja yang kita butuhkan? Simak penjelasan di bawah ini. Membuat Folder Khusus Ada baiknya jika file-file Excel yang mengandung Macro disimpan di dalam folder khusus, sehingga mudah bagi kita untuk menemukannya kembali jika suatu saat ingin mengedit atau memperbarui kode-kode di dalamnya. Sebagai contoh, Anda bisa membuat folder dengan nama: latihan Macro di dalam salah satu folder drive Anda. 1
Buat folder khusus untuk menyimpan data-data file MS Excel mengandung macro Mengaktifkan Tab Developer Macro pada MS Excel sudah disiapkan di dalam tab khusus bernama Developer. Dalam tab ini, Anda akan menemui menu Record, Insert, hingga kelompok Control yang dapat dipakai untuk membuat tombol, kotak cek, dan sebagainya. Secara default, tab ini tidak dalam kondisi aktif. Dengan demikian, untuk mengaktifkannya, lakukan langkahlangkah berikut: 1. Klik tab File dan pilih Options. 2. Pilih menu Customize Ribbons. 2 Pilih menu Customize Ribbon
3. Klik pada kotak cek Developer pada kolom Customize the Ribbon. Memilih kotak cek Developer 4. Tekan tombol OK. Kini, Anda bisa melihat tab Developer di samping kanan tab View. Tab Developer untuk membuat dan mengontrol macro Merekam Macro Setelah tab Developer diaktifkan, maka Anda sudah bisa membuat macro. Ada dua metode umum membuat macro. Pertama, menggunakan perekaman dan yang kedua dengan memanfaatkan script pemrograman VBA. Karena pembuatan macro menggunakan metode perekaman sangat mudah dibuat, maka akan kita bahas terlebih dahulu. Pada dasarnya, merekam macro sama seperti Anda merekam menggunakan alat perekam karena cara kerjanya dimulai dengan menekan tombol record dan melakukan aktivitas di dalam jendela MS Excel. Hasil rekaman tersebut akan dikonversi menjadi script VBA secara otomatis. 3
Di bawah ini tersaji langkah-langkah membuat macro menggunakan metode perekaman yang berfungsi untuk membuat sheet baru, mengubah warna font dan background, mengubah ukuran font, dan mengubah warna font. 1. Klik tab Developer. 2. Setelah itu, klik ikon Record Macro. Ikon Record Macro di dalam tab Developer 3. Beri nama untuk macro ini dengan menuliskannya dalam textbox Macro Name (jangan gunakan spasi jika lebih dari dua kata, melainkan tanda underscore, misal: macro_baru). Jika ingin menulis deskripsi fungsi dan tujuan macro, maka Anda bisa mengetikkannya di dalam kotak teks Description. 4. Anda bisa memilih tombol shortcut untuk menjalankan macro yang sudah dibuat. Membuat macro menggunakan metode perekaman dari awal 4
5. Tekan tombol OK. Sekarang, perekaman macro sudah dimulai. Di bawah ini akan disajikan langkah-langkah yang terekam sebagai macro_baru. 6. Buat sheet baru dengan meng-klik. Buat sheet baru 7. Ketik di dalam sel A1: DAFTAR BARANG PT MAJU LANCAR. 8. Blok teks tersebut, ubah warna font menjadi biru dengan meng-klik ikon Font Color. 9. Klik ikon Bold dan atur ukuran teks menjadi 20. Teks pertama yang direkam dalam sebuah macro 10. Kemudian, berturut-turut di dalam sel A2 hingga sebagai berikut: A2: ID B2: Nama Produk C2: Stok D2: Harga 11. Atur ukuran masing-masing kolom untuk sel A2-D2 tersebut. 5
Tentang Penulis Jubilee Enterprise, telah dipercaya oleh penerbit dan pembaca buku tanah air dalam satu dasawarsa ini. Hingga sekarang, tulisantulisannya yang diterbitkan dalam bentuk buku telah mencapai hampir 400 judul, sebagian besar bertema teknologi informasi dan kemudian disusul dengan tema psikologi & parenting, manajemen, fotografi, anak-anak, dan tema umum lainnya. Salah satu imprint Jubilee Enterprise adalah Jubilee Authors Companion yang merupakan sahabat bagi para penulis-penulis profesional yang ingin tetap berkarya. Anda dapat memperoleh informasi lebih lanjut tentang Jubilee Enterprise lewat situs: www.thinkjubilee.com. Catatan: Untuk melakukan pemesanan buku, hubungi Layanan Langsung PT Elex Media Komputindo: Gramedia Direct Jl. Palmerah Barat No. 29-37, Jakarta 10270 Telemarketing/CS: 021-53650110/111 ext: 3901/3902/3292 177