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

Excel VBA-alternativ eksplisitt

Erklæring om variabler er veldig viktig i VBA, Option Explicit gjør en bruker obligatorisk å erklære alle variablene før du bruker dem, 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 det 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 direkte referere verdien 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 har kommet over det blå linjet 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 som var det, og for å være veldig ærlig tenkte jeg ikke engang på dette i det hele tatt. Ikke bare for meg eller deg, 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 variabelerklæringen til en obligatorisk prosess.

Du kan laste ned denne VBA Option Explicit Excel Template her - VBA Option Explicit Excel Template

For eksempel, se nedenstående kode 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 kompileringsfeil og det står "Variabel ikke definert" . Vi har ikke erklært variabelen “i”, men straks har vi tilordnet verdien til den 25.

Siden vi har lagt til ordet “Eksplisitt alternativ” tvinger det oss til å erklære variabelen obligatorisk.

I koden ovenfor er alfabetet “i” svart, så vi har lagt til variabelkontrollordet “Alternativ eksplisitt” det forhindrer oss i å bruke de ikke-deklarerte 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, tar du feil.

Fordi vi kan gjøre dette ordet obligatorisk i alle modulene ved å gjøre en enkel innstilling. Følg 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 og når du legger til ny modul, setter den automatisk inn ordet "Option Explicit" 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 den hjelpe oss 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, skal jeg få 500 som resultat i en meldingsboks. Men se hva som skjer.

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

Hvis vi ser nøye på den andre linjen, er det en liten stavefeil. Navnet mitt på variabelen 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 det markert meg 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 !!!