Pilihan VBA Eksplisit

Opsyen Excel VBA Eksplisit

Pengisytiharan pemboleh ubah sangat penting dalam VBA, Option Explicit menjadikan pengguna wajib menyatakan semua pemboleh ubah sebelum menggunakannya, sebarang pemboleh ubah yang tidak ditentukan akan menimbulkan kesalahan semasa pelaksanaan kod, kita dapat menulis pilihan kata kunci secara eksplisit atau kita dapat mengaktifkannya untuk semua kod dari pilihan dengan membolehkan memerlukan pengisytiharan berubah.

Dalam VBA, ini semua mengenai pemboleh ubah. Untuk menyimpan data, kita memerlukan pemboleh ubah dengan jenis data yang sesuai. Anda boleh menyoal saya mengapa anda memerlukan pemboleh ubah apabila anda dapat menambahkan nilai ke hamparan itu sendiri secara langsung. Ini terutama disebabkan oleh banyak pengguna buku kerja, jika dikendalikan oleh satu orang, maka anda boleh merujuk nilai ke helaian itu sendiri secara langsung. Dengan menyatakan pemboleh ubah kita dapat membuat kod fleksibel untuk menyimpan data.

Apakah Pilihan VBA Eksplisit?

Saya harap anda menjumpai perkataan berjajar biru "Option Explicit" di bahagian atas modul anda sebelum makro dimulakan dalam modul tersebut.

Pada permulaan belajar VBA, saya juga tidak memahami apa itu dan untuk terus terang saya sama sekali tidak memikirkan perkara ini. Bukan hanya untuk saya atau anda tetapi juga sama untuk semua orang pada awalnya. Tetapi kita akan melihat betapa pentingnya perkataan ini sekarang.

"Option Explicit" adalah mentor kami dalam menyatakan pemboleh ubah. Dengan menambahkan perkataan ini menjadikan deklarasi pemboleh ubah adalah proses wajib.

Anda boleh memuat turun Templat Excel Eksplisit Opsyen VBA ini di sini - Templat Excel Eksplisit Pilihan VBA

Sebagai contoh lihat kod di bawah ini untuk memahami.

Kod:

 Sub Contoh1 () i = 25 MsgBox i End Sub 

Sekiranya saya menjalankan kod ini, kita akan mendapat nilai pemboleh ubah "I" di kotak mesej di VBA.

Sekarang saya akan menambah perkataan "Option Explicit" pada awal kod VBA.

Sekarang saya akan menjalankan kod dan melihat apa yang berlaku. Sekiranya anda berlatih dengan saya tekan kekunci F5 untuk menjalankan kodnya.

Kami mendapat ralat kompilasi dan tertulis "Pemboleh ubah tidak ditentukan" . Kami belum menyatakan pemboleh ubah "i" tetapi langsung kami telah menetapkan nilainya sebagai 25.

Oleh kerana kita telah menambahkan kata "Option Explicit", ini memaksa kita untuk menyatakan pembolehubah secara wajib.

Dalam kod di atas abjad "i" tidak diisytiharkan, jadi kami telah menambahkan kata pengawal pemboleh ubah "Option Explicit", hal ini menghalangi kita untuk menggunakan pemboleh ubah yang tidak diisytiharkan.

Sebaik sahaja anda menambahkan perkataan "Option Explicit" di bahagian atas modul, ini berlaku untuk semua makro dalam modul tertentu untuk menyatakan pemboleh ubah secara mandatori.

Bagaimana Menjadikan Deklarasi Pembolehubah Wajib?

Sekiranya anda telah menambahkan mentor pemboleh ubah "Option Explicit" secara manual dalam modul anda semasa anda memasukkan modul baru, anda tidak akan mendapat mentor pemboleh ubah ini secara lalai.

Sekiranya anda berfikir setiap kali anda perlu menambahkan perkataan "Option Explicit" untuk semua modul baru secara manual maka anda salah.

Kerana kita dapat menjadikan kata ini wajib di semua modul dengan melakukan pengaturan sederhana. Ikuti langkah di bawah untuk menyesuaikan tetapan.

Langkah 1: Pergi ke penyunting asas Visual.

Langkah 2: Pergi ke ALAT dan klik pada Pilihan.

Langkah 3: Sebaik sahaja anda mengklik Pilihan, anda akan melihat tetingkap di bawah.

Langkah 4: Di bawah tetingkap ini Pergi ke Editor dan tandakan pilihan "Memerlukan Pernyataan Berubah" .

Langkah 5: Klik OK untuk menutup tetingkap.

Mulai sekarang dan seterusnya setiap kali anda menambah modul baru secara automatik memasukkan perkataan "Option Explicit" secara lalai.

Pilihan Eksplisit adalah Penjimat anda

Option Explicit menolong kami dalam banyak cara, langsung dari membuat pengisytiharan pemboleh ubah wajib, ia akan membantu kami sehingga pelaksanaannya. Lihat kod di bawah.

Kod:

 Sub Contoh2 () Dim CurrentValue Sebagai Integer CurentValue = 500 MsgBox CurrentValue End Sub 

Dalam kod di atas, saya telah menyatakan pemboleh ubah "CurrentValue" sebagai integer. Pada baris seterusnya, saya telah memberikan nilai 500 kepadanya. Sekiranya saya menjalankan kod ini, saya akan mendapat 500 hasilnya di kotak mesej. Tetapi lihatlah apa yang berlaku.

Ia mengatakan "Pemboleh ubah tidak ditentukan" dan menyoroti baris kedua.

Sekiranya kita melihat baris kedua dengan teliti, terdapat sedikit kesalahan ejaan. Nama pemboleh ubah saya adalah "CurrentValue" tetapi pada baris kedua saya telah kehilangan satu ejaan iaitu "r" Ia mengatakan "CurrentValue" dan bukan "CurrentValue". Oleh kerana saya telah membuat pernyataan pemboleh ubah wajib dengan menambahkan perkataan "Option Explicit" di excel VBA, ia telah menunjukkan kepada saya kesalahan kesalahan ketik yang saya buat.

Oleh itu, apabila kita membetulkan ejaan dan menjalankan kodnya, kita akan mendapat hasilnya seperti berikut.

Sampaikan salam kepada mentor pemboleh ubah yang baru dilantik !!!