VBA nyilvános változók - Nyilvános változók deklarálása a VBA-ban (példák)

Nyilvános változók a VBA-ban

A „nyilvános változók” a VBA-ban, amint a neve is sugallja, olyan változók, amelyeket deklaráltan nyilvánosan használnak az összes makrón, amelyet ugyanabban a modulban írunk, valamint a különböző modulokban is. Tehát, amikor a változókat bármely makró elején deklaráljuk, akkor ezeket „Nyilvános változóknak” vagy „Globális változóknak” nevezzük.

Hogyan deklarálhatók nyilvános változók a VBA-ban?

Általában a VBA alfolyamatot indítjuk el, az alfolyamaton belül pedig deklaráljuk a változókat. Ezt a cikkig mindannyian gyakoroltuk.

Valahányszor új alfolyamatot írunk, deklarálunk friss változókat, hozzájuk rendelt adattípusokkal. De ma elbúcsúzunk az ismétlődő változóktól az alfolyamatok során.

Emlékezzünk a régi stílusra. Az alábbiakban látható az a kód, amelyet egyetlen változóval írtam.

A „Public_Variable” aleljárásban deklaráltam ezt a változót. Most nem használhatom a többi modult.

Most a „Public_Variable1” alfolyamatban nem használhatjuk a „Var1” változót, amelyet az első „Public_Variable” alfolyamatban deklaráltunk. Ez korlátozza a változók deklarálását az alfolyamatokon belül.

# 1 - Modulszintű változók

Mint mindannyian tudjuk, makrókat írunk modulokba. Számos modult illeszthetünk be. Kétféle „Nyilvános változót” deklarálhatunk a VBA-ban, az egyik az, hogy a változókat ugyanazon modul összes alfolyamatához használjuk, a második pedig az összes modul összes alfolyamatához a változókat.

Először látni fogjuk a nyilvános változók deklarálását a VBA-ban modul szinten.

Ahhoz, hogy a változókat ugyanazon modul összes alfolyamatához használjuk, a makrók indítása előtt deklarálnunk kell a változókat a modul tetején.

Az alábbiakban bemutatjuk a példaképet a megértése érdekében.

Amint a fenti képen láthatjuk, két változót deklaráltam, mielőtt bármilyen makrót elindítanék a modulban. Ez a két változó tetszőleges számú makróban használható ebben a modulban.

Az alfolyamat belsejében kezdi el beírni a változó nevét, így láthatja, hogy az IntelliSense lista megjeleníti a változók nevét.

Most ezeket a változókat használhatjuk az összes olyan makróban, amelyet a „Modul1” -be írunk.

Ezek a változók csak ebben a modulban használhatók. Például most beillesztek még egy modult, és írok egy új makrót.

A 2. modulban nem tudom használni azokat a változókat, amelyeket az „1. ​​modulban” deklaráltunk.

Tehát hogyan tehetjük ezeket a változókat nyilvánosságra a VBA-ban, hogy az összes modulban és az összes alfolyamatban használható legyen?

# 2 - Deklarálja, hogy a változók nyilvánosan használják őket

Menjen vissza a modul 1. moduljához. Deklaráltuk a változókat, mielőtt elkezdenénk írni a makró módját, és azt is, hogy milyen világot használtunk a változók deklarálásához.

A „DIM” szó hagyományos módszerével deklaráltuk ezeket a változókat.

Ha csak a „DIM” szót használjuk, akkor csak az összes makrón használható, de ugyanabban a modulban.

A „DIM” szó helyett a „PUBLIC” vagy a „GLOBAL” szót kell használnunk, hogy elérhetővé tegyük a makrók összes moduljában.

A „Global” szót használtam a változó deklaráció nyilvánosságra hozatalához. Használhatja a „Nyilvános” szót is.

Tehát a „Globális” és a „Nyilvános” szavak használatával deklarálhatunk olyan változókat, amelyek a modulok közötti makrókhoz használhatók.

Dolgok, amikre emlékezni kell

  • Jó gyakorlat a változók nyilvános deklarálása, de deklarálásuk előtt bőséges tapasztalatra van szükség.
  • Amint a makrók elkezdtek futni, a változó makró értéke meg fog egyezni.
  • Csak az adott makrón belül rendelje hozzá az adott értéket a változóhoz, hogy elkerülje az esetleges zavart.

érdekes cikkek...