Pembolehubah Global VBA - Bagaimana Menyatakan Pembolehubah Global dalam VBA?

Beberapa fungsi didefinisikan di dalam fungsi dan digunakan dalam fungsi dan beberapa pemboleh ubah didefinisikan di luar fungsi dan digunakan oleh semua fungsi dan pemboleh ubah tersebut digunakan sebagai Pembolehubah Global, misalnya, pemboleh ubah yang dinyatakan di bawah sub-fungsi tersebut adalah dikenali sebagai Pembolehubah Global.

Pembolehubah Global dalam Excel VBA

Menyatakan pemboleh ubah nampaknya cukup mudah, tetapi untuk mempunyai pengaruh yang baik, kita perlu memahami skop pemboleh ubah tersebut. Selalunya kita menyatakan pemboleh ubah untuk setiap makro di dalam subprosedur setiap masa. Tetapi dengan menyatakan satu pemboleh ubah, kita dapat menggunakannya dalam semua makro dalam modul yang sama dan modul lain dari projek VBA semasa. Dalam artikel ini, kami akan menunjukkan kepada anda cara menyatakan Pemboleh ubah Global dalam Excel VBA.

Apakah Pembolehubah Global dalam Excel VBA?

VBA Global Variables adalah pemboleh ubah yang dinyatakan sebelum permulaan sebarang makro dalam modul. Apabila pemboleh ubah dinyatakan dengan menggunakan "Umum" atau "Global", itu akan menjadi "Pembolehubah Global".

Sub Pemboleh ubah Prosedur Tidak Boleh Digunakan Di Mana Saja.

Kami biasanya menyatakan pemboleh ubah di dalam subrutin dalam VBA dengan menggunakan kata "Dim."

Lihat gambar di atas. Saya telah menyatakan pemboleh ubah "k" sebagai integer di dalam subprosedur Global_Example1.

Katakan kita menggunakan pemboleh ubah ini dalam prosedur Sub ini pada bila-bila masa. Walau bagaimanapun, saya tidak dapat menggunakan pemboleh ubah ini dalam sub prosedur lain sama ada dalam modul kelas yang sama di VBA atau modul lain.

Seperti yang ditunjukkan pada gambar di atas, pemboleh ubah "k," yang dinyatakan dalam subproses Global_Example1, tidak dapat digunakan dalam Sub prosedur Global_Example2.

Begitu juga, pemboleh ubah "j" yang dinyatakan dalam subprosedur Global_Example2 tidak dapat digunakan dalam Sub prosedur Global_Example1 walaupun kedua subprosedur berada dalam modul yang sama.

Bagaimana Menyatakan Pembolehubah Global dalam VBA?

Berikut adalah cara untuk menyatakan pemboleh ubah global dalam excel VBA.

# 1 - Pemboleh ubah Modul boleh digunakan dalam Sub Prosedur dalam Modul yang Sama

Seperti yang telah kita lihat, kita tidak dapat menggunakan pemboleh ubah subprosedur dalam salah satu modul. Untuk menjadikannya tersedia untuk semua prosedur Sub dalam modul yang sama, kita perlu menyatakan pemboleh ubah di bahagian atas modul.

Dalam gambar di atas, saya telah menyatakan pemboleh ubah pada permulaan modul sahaja. Saya telah menyatakan pemboleh ubah "MyNumber" sebagai Integer dalam Modul 1 .

Setelah pemboleh ubah dinyatakan di bahagian atas modul, kita dapat menggunakan pemboleh ubah yang sama untuk semua prosedur Sub lain dalam modul yang sama. Dalam kes ini, kita dapat menggunakan pemboleh ubah "MyNumber" untuk semua prosedur Sub dalam Modul 1.

Masalahnya ialah kita tidak dapat menggunakannya dalam modul lain. Dalam kes ini, pemboleh ubah "MyNumber," yang dinyatakan dalam Modul 1, tidak dapat digunakan dalam Modul 2.

# 2 - Pembolehubah Global boleh digunakan dalam Sub Prosedur dan juga dalam Modul mana pun

Sekarang kita telah melihat dua jenis deklarasi pemboleh ubah dan skopnya semasa menggunakan. Perkara yang menarik ialah kita dapat menyatakan pemboleh ubah dalam salah satu modul dan menggunakannya untuk semua prosedur Sub dalam semua modul Projek VBA yang sama.

Untuk menjadikan pemboleh ubah tersedia untuk semua prosedur Sub di semua modul, kita perlu menyatakan pemboleh ubah di bahagian atas modul bukan dengan menggunakan kata "Dim" tetapi dengan menggunakan nama "Umum" atau "Global."

Pada gambar di atas, anda dapat melihat saya telah menggunakan kata "Umum" untuk menyatakan pembolehubah dan bukannya kata veteran kami "Dim."

Dalam tangkapan skrin di atas, saya telah menyatakan pemboleh ubah dalam Modul 1. Saya mempunyai dua modul lagi, bernama Modul 2 & Modul 3.

Oleh kerana saya telah menyatakan pemboleh ubah menggunakan kata "Umum" di bahagian atas modul, sekarang saya dapat mengakses pemboleh ubah ini dalam sub prosedur mana pun di mana-mana modul buku kerja yang sama.

Bukan hanya "Umum", tetapi kita juga dapat menggunakan kata "Global" untuk menyatakan pemboleh ubahnya.

Global & Public adalah dua kata kunci untuk menyatakan pemboleh ubah dan menjadikannya tersedia di seluruh modul di VBA.

Perkara yang Perlu Diingat

  • Setelah makro excel berjalan dengan nilai pemboleh ubah global, pemboleh ubahnya sama di semua prosedur Sub.
  • Lebih baik mengekalkan modul tertentu untuk menyatakan pemboleh ubah global dalam VBA dan memiliki semua pemboleh ubah dalam satu modul.
  • Satu-satunya cara kita boleh menetapkan semula nilai pemboleh ubah adalah dengan menetapkan semula kod makro dengan menekan butang berhenti.

Artikel menarik...