Makro tingkat lanjut di Word

Beberapa pengguna Word mungkin tahu cara merekam dan secara otomatis mengulangi serangkaian tindakan, teks, dan manipulasi yang dapat diulangi dengan satu kombinasi tombol: makro Word. Tetapi tanpa disadari, mereka mulai bekerja dengan fungsionalitas yang sangat kuat yang ada di balik setiap modul Microsoft Office: Visual Basic for Applications, atau disingkat VBA. Dengan cara ini, pintu terbuka ke dunia gadget, trik, dan kecerdikan lain yang dapat Anda kembangkan sendiri.

Melalui menu atau keyboard

Di Word 2003/2007, tekan Alt + F11 dan kita akan masuk ke editor VBA. Ini juga dilakukan melalui Pita Word 2007 (tab Pengembang / tombol Visual Basic) atau menu di Word 2003 dan sebelumnya (pilih Alat / Makro / Editor Visual Basic). Dengan Alt + F11 yang sama kami beralih antara Word dan editor VBA. Untuk menjalankan makro yang direkam sebelumnya atau program VBA yang dirancang sendiri, kami menekan Alt + F8, atau di Word 2007 klik tombol Makro pada tab Pengembang di Pita (atau di Word 2003: Alat / Makro / Makro). Memulai perekaman makro kemudian dapat lagi melalui tombol Rekam Makro (di Word 2003 dan sebelumnya: Ekstra / Makro / Rekam makro baru), tetapi jauh lebih cepat jika kita mengklik dua kali ikon jendela (di Word 2003 dan sebelumnya: OPN kotak).

Merekam operasi sebagai makro adalah cara termudah untuk menghasilkan kode VBA.

Tidak hanya di Word

Hampir semua keterampilan dasar yang dijelaskan dalam Kursus Pakar ini juga berlaku di modul Microsoft Office lainnya: cobalah berbagai hal di Excel, PowerPoint, Outlook, Access, Project, atau Visio. Nyatanya, banyak sekali software dari pihak lain yang juga memilih menawarkan VBA sebagai bahasa makro, lengkap dengan VBA editor dan semua shortcut yang terdaftar, termasuk AutoCAD, iGrafx FlowCharter, CorelDRAW, WordPerfect Office, BusinessObjects, dll.

Langkah pertama

Cara termudah untuk mengakses dunia VBA adalah dengan merekam hasil edit dalam makro, yang kemudian Anda perluas dan perbaiki dengan mengkodekan fungsionalitas tambahan. Misalnya, Anda memutuskan untuk memiliki setiap kalimat dalam blok teks yang diikuti oleh dua spasi, bukan satu dalam dokumen yang sudah ada. Pendekatan pertama untuk ini adalah dengan memanggil fungsi cari / ganti berulang kali (lihat juga Kursus ahli 'Cari dan ganti' di edisi Komputer sebelumnya! Total): mencari titik yang diikuti dengan spasi dan menggantinya dengan titik dengan dua spasi. Kemudian mulai lagi untuk tanda tanya, tanda seru, dll. Ini harus lebih cepat dan lebih elegan, bukan? Lanjut ke VBA!

Editor VBA

Mari kita sertakan stroke pengganti pertama itu dalam makro yang kita terima dengan nama default yang disarankan Macro1 dan tunjukkan bahwa kita ingin menyimpannya di Document1 saat ini. Lalu kami menekan Alt + F11, dan kami berakhir di editor VBA. Dari sini kita harus menerima dunia dwibahasa: antarmuka pengguna tetap dalam bahasa Belanda (atau bahasa apa pun yang digunakan Word), tetapi kodenya selalu dalam bahasa Inggris, bahkan jika berfungsi untuk mengotomatiskan Word Belanda. Ruang kerja utama dalam editor VBA adalah jendela Kode dan Penjelajah Proyek. Yang terakhir menunjukkan semua dokumen dan templat aktif dalam struktur pohon. Kami memperluas Proyek (Dokumen1), dan kami melihat tiga cabang: objek Microsoft Word, Modul dan Referensi, masing-masing dengan satu tingkat yang mendasarinya. Di bawah Modules, ini adalah NewMacros.Akhirnya, jika kita klik dua kali pada NewMacros, kode yang kita (tanpa sadar) buat akan muncul di jendela kode

Alt + F11 membawa kita dari modul Microsoft Office ke editor VBA.

Struktur

Perangkat lunak mandiri disebut subrutin di VBA. Oleh karena itu, semua kode yang dikandungnya berada di antara pernyataan Sub dan End Sub . Sub awal diikuti dengan nama pilihan Anda untuk rutinitas. Jika itu adalah makro yang direkam, maka ini adalah nama yang dipilih di dialog Word sebelum perekaman dimulai. Tapi ini masih bisa diubah di editor. Nama yang Anda gunakan diperlihatkan dalam daftar makro yang tersedia yang Anda buka dengan Alt + F8.

Instruksi dan deklarasi dapat berada di antara dua baris ini, pada prinsipnya satu baris per baris, kecuali dipisahkan oleh titik dua. Baris yang dimulai dengan apostrof (') menunjukkan baris komentar. Potongan teks seperti itu tidak berpengaruh pada jalannya program: mereka dilewati dan karena itu hanya berfungsi sebagai dokumentasi. Mereka secara otomatis diatur dalam warna hijau oleh editor VBA. Kata kunci yang dipesan berwarna biru, teks lainnya berwarna hitam, garis dengan kesalahan berwarna merah. Baris kode sumber ditutup dengan menekan Enter: jangan gunakan titik atau tanda baca lainnya, kecuali kode tersebut berlanjut (karena alasan keterbacaan, misalnya) di baris berikutnya: lalu kita akhiri baris dengan spasi dan 'garis bawah '(tanda hubung datar: _).

Deklarasi adalah pengumuman awal dari variabel yang akan kami gunakan, beserta tipenya. Pesan tersebut dimulai dengan kata kunci Dim , diikuti dengan nama pilihan Anda untuk variabel, kemudian As dan jenisnya (lihat kotak). Mereka opsional, kecuali Declare Variables Required dicentang pada tab Editor di bawah Tools / Options, atau jika kita menempatkan pernyataan Option Explicit di awal kode (yaitu sebelum Sub- baris pertama ) .

Dalam opsi editor VBA, kami menunjukkan apakah kami ingin variabel dideklarasikan secara eksplisit.