Panduan VBA terbaik (untuk pemula) yang Anda butuhkan

Panduan VBA terbaik (untuk pemula) yang Anda butuhkan

Platform pemrograman VBA yang berjalan di hampir semua produk Microsoft Office adalah salah satu alat paling kuat yang dapat digunakan siapa pun untuk meningkatkan penggunaan produk tersebut.

Panduan VBA ini untuk pemula ini akan menunjukkan kepada Anda cara menambahkan menu pengembang ke aplikasi kantor Anda, cara memasukkan jendela editor VBA, dan bagaimana pernyataan dan loop VBA dasar bekerja sehingga Anda dapat memulai menggunakan VBA di Excel, Word, PowerPoint, Outlook, dan OneNote.

Daftar isi

    Daftar kiri mencakup semua menu dan perintah menu yang tersedia yang tersedia di aplikasi kantor itu. Daftar di sebelah kanan adalah yang saat ini tersedia atau diaktifkan.

    • Anda harus melihat pengembang dalam daftar di sebelah kanan, tetapi tidak akan diaktifkan. Cukup pilih kotak centang untuk mengaktifkan menu pengembang.
    • Jika Anda tidak melihat Pengembang Tersedia di sebelah kanan, lalu ubah kiri Pilih Perintah dari dropdown ke Semua perintah. Menemukan Pengembang dari daftar dan pilih Tambahkan >> di tengah untuk menambahkan menu itu ke pita.
    • Pilih OKE Setelah selesai.
    • Setelah menu pengembang aktif, Anda dapat kembali ke jendela aplikasi utama dan pilih Pengembang Dari menu teratas. 
    • Lalu pilih Kode Lihat Dari grup kontrol di pita untuk membuka jendela editor VBA.
    • Ini akan membuka jendela editor VBA di mana Anda dapat mengetik kode yang akan Anda pelajari di beberapa bagian berikutnya.
    • Coba tambahkan menu pengembang ke beberapa aplikasi kantor yang Anda gunakan setiap hari. Setelah Anda merasa nyaman membuka jendela editor VBA, lanjutkan ke bagian selanjutnya dari panduan ini.

    Tip Pemrograman Umum VBA untuk Pemula

    Anda akan melihat ketika editor VBA terbuka, opsi navigasi di panel kiri terlihat berbeda dari satu aplikasi kantor ke yang lain.

    Ini karena objek yang tersedia di mana Anda dapat menempatkan kode VBA bergantung pada objek apa yang ada di aplikasi. Misalnya, di Excel, Anda dapat menambahkan kode VBA ke buku kerja atau objek lembar. Dalam kata, Anda dapat menambahkan kode VBA ke dokumen. Di powerpoint, hanya untuk modul.

    Jadi, jangan kaget dengan menu yang berbeda. Struktur dan sintaksis kode VBA adalah sama di semua aplikasi. Satu -satunya perbedaan adalah objek yang dapat Anda referensi dan tindakan yang dapat Anda ambil pada objek tersebut melalui kode VBA.

    Sebelum kita menyelami berbagai objek dan tindakan yang dapat Anda ambil melalui kode VBA, mari kita lihat pertama struktur dan sintaks VBA yang paling umum yang dapat Anda gunakan saat Anda menulis kode VBA.

    Di mana untuk meletakkan kode VBA

    Saat Anda berada di editor VBA, Anda perlu menggunakan dua kotak dropdown di bagian atas jendela pengeditan untuk memilih objek mana yang ingin Anda lampirkan kode, dan ketika Anda ingin kode berjalan.

    Misalnya, di Excel, jika Anda memilih Lembar Kerja Dan Mengaktifkan, Kode akan berjalan setiap kali lembar kerja dibuka. 

    Tindakan lembar kerja lain yang dapat Anda gunakan untuk memicu kode VBA Anda termasuk ketika lembar kerja berubah, saat ditutup (dinonaktifkan), ketika perhitungan lembar kerja dijalankan, dan banyak lagi.

    Saat Anda menambahkan kode VBA di editor, selalu pastikan untuk menempatkan kode VBA Anda pada objek dan menggunakan tindakan yang benar yang ingin Anda gunakan untuk memicu kode itu.

    VBA jika pernyataan

    Pernyataan IF bekerja di VBA seperti bekerja dalam bahasa pemrograman lainnya.

    Bagian pertama dari pernyataan IF melihat apakah kondisi atau serangkaian kondisi itu benar. Kondisi ini dapat bergabung dengan dan atau atau operator untuk menghubungkannya bersama.

    Salah satu contohnya adalah memeriksa apakah nilai dalam spreadsheet di atas atau di bawah nilai "lewat", dan menetapkan status lulus atau gagal ke sel lain.

    Jika sel (2, 2)> 75 maka sel (2, 3) = “lulus” sel lain (2, 3) = “gagal”

    Jika Anda tidak ingin seluruh pernyataan pada satu baris, Anda dapat membaginya menjadi beberapa baris dengan menambahkan simbol "_" di akhir baris.

    Jika sel (2, 2)> 75 lalu _
    Sel (2, 3) = “lulus” lain _
    Sel (2, 3) = "gagal"

    Menggunakan teknik ini seringkali dapat membuat kode lebih mudah dibaca dan debug.

    VBA untuk loop berikutnya

    Jika pernyataan bagus untuk perbandingan tunggal, seperti contoh di atas melihat satu sel tunggal. Tetapi bagaimana jika Anda ingin mengulangi seluruh jajaran sel dan melakukan hal yang sama jika ada pernyataan pada masing -masing?

    Dalam hal ini Anda membutuhkan loop untuk. 

    Untuk melakukan ini, Anda perlu menggunakan panjang rentang, dan mengulangi panjang itu dengan jumlah baris yang berisi data.

    Untuk melakukan ini, Anda perlu menentukan rentang dan variabel sel, dan mengulanginya. Anda juga harus menentukan penghitung sehingga Anda dapat mengeluarkan hasilnya ke baris yang sesuai. Jadi kode VBA Anda pertama -tama akan memiliki baris ini.

    Redup rng sebagai rentang, sel sebagai rentang
    Red rowcounter sebagai bilangan bulat

    Tentukan ukuran rentang sebagai berikut. 

    Set RNG = rentang ("B2: B7")
    RowCounter = 2

    Akhirnya, Anda dapat membuat loop Anda untuk melangkah melalui setiap sel dalam kisaran itu dan melakukan perbandingan.

    Untuk setiap sel di RNG Jika sel.Nilai> 75 Lalu _  Sel (rowcounter, 3) = "lulus" else _  Sel (RowCounter, 3) = "Gagal"  rowcounter = rowcounter + 1 Sel berikutnya

    Setelah skrip VBA ini dijalankan, Anda melihat hasilnya di spreadsheet yang sebenarnya.

    VBA saat loop

    Loop sementara juga loop melalui serangkaian pernyataan, seperti halnya loop, tetapi kondisi loop untuk melanjutkan adalah suatu kondisi yang tetap benar.

    Misalnya, Anda dapat menulis hal yang sama untuk loop di atas, sebagai loop sementara, hanya dengan menggunakan variabel RowCounter sebagai berikut.

    Sementara Rowcounter < rng.Count + 2 Jika sel (RowCounter, 2)> 75 lalu _  Sel (rowcounter, 3) = "lulus" else _  Sel (RowCounter, 3) = "Gagal"  rowcounter = rowcounter + 1 Pergi ke

    Catatan: The rng.Hitung + 2 Batas penghentian diperlukan karena penghitung baris dimulai pada 2 dan perlu diakhiri pada baris 7 di mana data berakhir. Namun, jumlah kisaran (B2: B7) hanya 6, dan while loop hanya akan berakhir setelah penghitung lebih besar dari penghitung - sehingga nilai Rowcounter terakhir harus 8 (atau RNG.Hitung + 2).

    Anda juga dapat mengatur loop while sebagai berikut:

    Sementara Rowcounter <= rng.Count + 1

    Anda hanya dapat menambah jumlah rentang (6) dengan 1, karena setelah variabel RowCounter mencapai ujung data (baris 7), loop dapat selesai.

    VBA lakukan saat dan lakukan sampai loop

    Lakukan sementara dan lakukan sampai loop hampir identik dengan saat loop, tetapi bekerja sedikit berbeda.

    • Itu Saat loop memeriksa apakah suatu kondisi benar di awal loop.
    • Itu Do-while loop memeriksa apakah suatu kondisi benar setelah menjalankan pernyataan di loop.
    • Itu Loop do-sampai memeriksa apakah suatu kondisi masih salah setelah menjalankan loop.

    Dalam hal ini Anda akan menulis ulang loop sementara di atas sebagai berikut, sebagai loop do-while.

    Melakukan Jika sel (RowCounter, 2)> 75 lalu _  Sel (rowcounter, 3) = "lulus" else _  Sel (RowCounter, 3) = "Gagal"  rowcounter = rowcounter + 1 Loop saat Rowcounter < rng.Count + 2

    Dalam hal ini logikanya tidak banyak berubah, tetapi jika Anda ingin memastikan perbandingan logika terjadi setelah semua pernyataan dijalankan (memungkinkan mereka semua berjalan tidak peduli apa pun setidaknya sekali), maka do-while atau do-sampai loop adalah opsi yang tepat.

    VBA Pilih Pernyataan Kasus

    Jenis terakhir dari pernyataan logis yang perlu Anda pahami untuk mulai menyusun kode VBA Anda adalah Pilih Pernyataan Kasus.

    Mengingat contoh di atas, katakanlah Anda ingin memiliki metode penilaian yang tidak hanya lulus gagal. Sebaliknya, Anda ingin menetapkan nilai huruf dari A hingga F.

    Anda dapat melakukan ini dengan pernyataan kasus terpilih berikut:

    Untuk setiap sel di RNG Pilih Case Cell  Kasus 95 hingga 100  Sel (rowcounter, 3) = "a" Kasus 85 hingga 94  Sel (rowcounter, 3) = "b"  Kasus 75 hingga 84  Sel (rowcounter, 3) = "c"  Kasus 65 hingga 74  Sel (rowcounter, 3) = "d"  Kasus 0 hingga 64  Sel (rowcounter, 3) = "f"  Akhiri Pilih rowcounter = rowcounter + 1 Sel berikutnya

    Spreadsheet yang dihasilkan setelah skrip VBA ini berjalan terlihat seperti yang di bawah ini.

    Sekarang Anda tahu semua yang perlu Anda ketahui untuk mulai menggunakan VBA di aplikasi Microsoft Office Anda.