VBA-alternativ eksplisitt - Hvordan gjøre variabel erklæring obligatorisk?

Innholdsfortegnelse

Excel VBA-alternativ eksplisitt

Erklæring om variabler er veldig viktig i VBA, Option Explicit gjør at en bruker er obligatorisk å erklære alle variablene før de brukes, enhver udefinert variabel vil kaste en feil under utførelse av koden, vi kan skrive nøkkelordalternativet eksplisitt eller vi kan aktivere det for alle koder fra alternativer ved å aktivere å kreve variabel deklarasjon.

I VBA handler alt om variabler. For å lagre data trenger vi variabler med en passende datatype. Du kan spørre meg hvorfor trenger du variabel når du direkte kan legge til verdien i regnearket. Dette er hovedsakelig på grunn av flere brukere av arbeidsboken. Hvis den håndteres av en person, kan du henvise verdien direkte til selve arket. Ved å erklære variabler kan vi lage den fleksible koden for å lagre dataene.

Hva er VBA Option Explicit?

Jeg håper du hadde kommet over det blå linjede ordet "Option Explicit" øverst i modulen din før noen makro startet i den modulen.

I begynnelsen av å lære VBA forsto jeg ikke hva det var, og for å være veldig ærlig tenkte jeg ikke engang på dette i det hele tatt. Ikke bare for deg eller meg, men det er også det samme for alle i starten. Men vi vil se viktigheten av dette ordet nå.

“Option Explicit” er vår mentor i å erklære variabelen. Ved å legge til dette ordet, gjør det variabeldeklarasjonen til en obligatorisk prosess.

Se for eksempel på koden nedenfor for forståelse.

Kode:

Subeksempel1 () i = 25 MsgBox i End Sub

Hvis jeg kjører denne koden, får vi verdien av variabelen “I” i meldingsboksen i VBA.

Nå vil jeg legge til ordet “Option Explicit” helt i begynnelsen av VBA-koden.

Nå skal jeg kjøre koden og se hva som skjer. Hvis du trener med meg, trykker du på F5-tasten for å kjøre koden.

Vi fikk en kompileringsfeil, og det står "Variabel ikke definert." Vi har ikke erklært variabelen "i", men med en gang har vi tilordnet verdien til den 25.

Siden vi har lagt til ordet “Eksplisitt opsjon”, tvinger det oss til å erklære variabelen tvungent.

I den ovennevnte koden er alfabetet “i” svart, så vi har lagt til variabelkontrollordet “Alternativ eksplisitt” det hindrer oss i å bruke de ikke-angitte variablene.

I det øyeblikket du legger til ordet “Alternativ eksplisitt” øverst i modulen, er det aktuelt for alle makroene i den aktuelle modulen å erklære variablene obligatorisk.

Hvordan gjøre variabelerklæringen obligatorisk?

Hvis du har lagt til variabelen mentor "Option Explicit" manuelt i modulen din når du setter inn den nye modulen, får du ikke denne variabelen mentoren som standard.

Hvis du tror at hver gang du trenger å legge til ordet "Option Explicit" for alle de nye modulene manuelt, så tar du feil.

Fordi vi kan gjøre dette ordet obligatorisk i alle modulene ved å gjøre en enkel innstilling, følger du trinnene nedenfor for å justere innstillingene.

Trinn 1: Gå til Visual basic editor.

Trinn 2: Gå til VERKTØY og klikk på Alternativer.

Trinn 3: I det øyeblikket du klikker på Alternativer, vil du se vinduet nedenfor.

Trinn 4: Gå til Editor under dette vinduet og merk av for alternativet "Krev variabel erklæring."

Trinn 5: Klikk på OK for å lukke vinduet.

Fra nå av, når du legger til en ny modul, setter den automatisk inn ordet "Alternativ eksplisitt" som standard.

Option Explicit er spareren din

Option Explicit hjelper oss på mange måter. Rett fra å gjøre erklæringen om variabel obligatorisk, vil det hjelpe oss frem til utførelsen. Se på koden nedenfor.

Kode:

Subeksempel2 () Dim CurrentValue As Integer CurentValue = 500 MsgBox CurrentValue End Sub

I koden ovenfor har jeg erklært variabelen “CurrentValue” som et helt tall. I neste linje har jeg tildelt verdien 500 til den. Hvis jeg kjører denne koden, bør jeg få 500 som et resultat av en meldingsboks. Men se hva som skjer.

Det står "Variabel ikke definert" og uthevet den andre linjen.

Hvis vi ser nøye på andre linje, er det en liten stavefeil. Variabelnavnet mitt er "CurrentValue", men i andre linje har jeg gått glipp av en stavemåte, dvs. "r". Det står "CurrentValue" i stedet for "CurrentValue." Siden jeg har gjort variabeldeklarasjonen obligatorisk ved å legge til ordet “Option Explicit” i excel VBA, har den markert skrivefeil jeg har gjort.

Så når vi retter stavemåten og kjører koden, får vi resultatet som følger.

Si hei til den nyutnevnte variable mentoren !!!

Interessante artikler...