VBA Global Variabel

Indholdsfortegnelse

Vi vil dække globale variabler i denne vejledning. En variabel i VBA kan have et andet omfang. En variabels omfang er baseret på dens position i koden og den måde, den erklæres på. Omfanget af en variabel angiver dens synlighed, og hvor den kan bruges.

Procedure-niveau Variabel

Disse variabler kan kun bruges inden for den delprocedure eller funktion, de er deklareret i. Du skal erklære en variabel på procedureniveau ved hjælp af søgeordet Dim. Derudover skal du placere den inden for delproceduren eller funktionen af ​​interesse. Den måde, du ville erklære en variabel på procedureniveau på, er vist i nedenstående kode:

1234567 UnderdeklareringAProcedureLevelVariable ()Dim nogleNummer Som HeltalnogleNummer = 5MsgBox someNumberAfslut Sub

Resultatet er:

Du kan kun bruge denne variabel inden for delproceduren kaldet DeclaringAProcedureLevelVariable (). Da det er i denne delprocedure, og vi brugte Dim -søgeordet. Hvis du kalder det fra en anden delprocedure, får du følgende fejl:

Modulniveau variabel

Du kan bruge en variabel på modulniveau i en hvilken som helst delprocedure eller funktioner inden for det samme modul. Du skal placere variabeldeklarationen øverst på modulet i afsnittet Deklarationer under sætningen Eksplicit optioner og bruge søgeordet Dim:

Når vi kører den anden delprocedure i stedet for en fejlmeddelelse, får vi følgende resultat i celle A1 i projektmappen:

Global niveauvariabel

Du kan bruge en global variabel i dine moduler, funktioner, delprocedurer og klasser. Du erklærer en global variabel i sektionen Deklarationer under erklæringen Options Explicit og ved hjælp af søgeordet Global. Den måde, du erklærer en variabel på globalt niveau, er vist nedenfor. Begge delprocedurer i modul1 kan bruge denne variabel.

Da denne variabel er en variabel på globalt niveau, kan du også bruge den i Module2:

Når du kører denne kode fra Module2, får du følgende resultat:

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave