Ebben a bemutatóban a globális változókat fogjuk bemutatni. A VBA változójának eltérő hatóköre lehet. A változó hatóköre a kódban elfoglalt helyén és a deklarálás módján alapul. A változó hatóköre jelzi annak láthatóságát és azt, hogy hol használható.
Eljárási szintű változó
Ezek a változók csak abban az al-eljárásban vagy függvényben használhatók, amelyben deklarálták őket. Eljárási szintű változót kell deklarálnia a Dim kulcsszó használatával. Ezenkívül be kell helyeznie az érdekelt eljárásba vagy funkcióba. Az eljárás szintű változó deklarálásának módja az alábbi kódban látható:
1234567 | Sub DeclarationAProcedureLevelVariable ()Dim someNumber mint IntegersomeNumber = 5MsgBox someNumberEnd Sub |
Az eredmény:
Ezt a változót csak a DeclaringAProcedureLevelVariable () nevű alrendszeren belül használhatja. Mivel ez ebben a részeljárásban szerepel, és a Dim kulcsszót használtuk. Ha egy másik alfolyamatból hívja, a következő hibaüzenetet kapja:
Modulszint változó
A modul szintváltozót használhatja ugyanazon modul bármely alfolyamatában vagy funkciójában. A változó deklarációt a modul tetején kell elhelyezni a Nyilatkozatok szakaszban, az Options Explicit utasítás alatt, és használnia kell a Dim kulcsszót:
Ha hibaüzenet helyett a második alfolyamatot futtatjuk, a következő eredményt kapjuk a munkafüzet A1 cellájában:
Globális szintű változó
Használhat globális változót a modulokban, funkciókban, alrendszerekben és osztályokban. Globális változót deklarál a Nyilatkozatok szakaszban, az Options Explicit utasítás alatt és a Global kulcsszó használatával. A globális szintű változó deklarálásának módja az alábbiakban látható. Az 1. modul mindkét alfolyamata használhatja ezt a változót.
Mivel ez a változó globális szintű változó, a 2. modulban is használhatja:
Amikor ezt a kódot a Module2 -ből futtatja, a következő eredményt kapja: