Excel VBA IF-uttalelser

IF-setning i VBA-kode er en av de mest brukte som lar deg ta et valg. IF-funksjon i VBA er forskjellig sammenlignet med EXCEL IF-funksjon, dvs. i Excel IF-funksjon eller formel sjekker om den gitte tilstanden eller kriteriene evalueres til SANN eller FALSE og returnerer deretter en verdi basert på evalueringen, mens VBA IF-setningen bare vil utføre den første halvparten av uttalelsen, dvs. sjekk om tilstanden evalueres til SANN eller FALSE, i tillegg må DET uttalelse legges inn i VBA IF-uttalelse for gjenværende drift eller oppgave å utføre.

Tre parametere som du må vurdere eller huske på når du skriver VBA IF-setningskode.

  • En tilstand eller parameter som skal testes.
  • En operasjon eller oppgave å utføre hvis tilstanden er SANN.
  • En operasjon eller oppgave å utføre hvis tilstanden er FALSE

Det er en beslutningsuttalelse som brukes til å utføre en blokk med kode.

Den utfører en oppgave eller operasjon når en tilstand er SANN, ellers gjør ingenting eller gjør noe annet. Vanligvis består et if-utsagn av et boolskt uttrykk etterfulgt av utsagn (det kan være en eller mange).

Enkelt til den komplekse tilstanden kan skrives i VBA IF-uttalelse.

Nedenfor vises de forskjellige typene VBA IF-uttalelser med syntaks og eksempler.

IF-uttalelsestypersyntax
HVIS DAHvis så (uttalelse)

Slutt om

HVIS ELSEHvis så (uttalelse1)

Ellers:

(Statement2)

Slutt om

HVIS ELSEIFHVIS da

(Statement1)

ELSEIF Da

(Statement2)

Slutt om

ELSE OG ELSEIF

(ELSEIF-uttalelsen må komme først, etter det ELSE)

HVIS (betingelse1 er sant)

(Statement1)

ELSEIF (betingelse2 er sant)

(Statement2)

ELLERS

(Statement3)

Slutt om

HVIS UTEN ENDIF

(bare en linjekode)

Brukes når ELSE eller ELSE IF-setning ikke brukes

IF (betingelse er sant) Da (uttalelse)

Bortsett fra utsagnet ovenfor, kan også NESTED IF- setningen brukes, dvs. en if- eller ELSEIF-setning i en annen if- eller ELSEIF-uttalelse.

Hvordan bruker jeg IF-uttalelser i Excel VBA?

Vi lærer typene og hvordan du bruker VBA IF-uttalelser med få eksempler i Excel.

Du kan laste ned denne VBA IF-uttalelsene Excel-malen her - VBA IF-uttalelsene Excel-malen
  • Åpne et VB Editor-vindu. Velg eller klikk på Visual Basic i kodegruppen i kategorien Utvikler, eller du kan direkte klikke på snarveistasten Alt + F11 .

  • Dette tar oss til Visual Basic-kodingsvinduet. Gå nå til Sett inn-menyen fra VBA-vinduet og velg Modul som vist nedenfor.

  • Nå er den tomme modulen opprettet, den kalles også et kodevindu, der du kan begynne å skrive om uttalelseskoder.

VBA HVIS DIN Uttalelse - Eksempel # 1

HVIS DER er en enkel form for VBA-uttalelse. Formatet for å skrive en kode er:

Hvis så

Du bør bruke samsvarende Slutt Hvis- setning etter at du har angitt syntaks ovenfor , Når betingelsen oppfyller eller kriterier evalueres til sann, blir alle linjene mellom deretter og Slutt Hvis behandlet.

Når du skriver Sub IF_THEN () som den første meldingen uten noen anførselstegn rundt den, kan du observere, Excel legger automatisk til linjen End Sub under den første meldingslinjen når du trykker på Enter. Nå må alle kodene du oppgir være mellom disse to linjene.

Kode:

 Sub IF_THEN () Hvis 3> 2, så er MsgBox "3 større enn 2" End If End Sub 

La oss sjekke ut koden ovenfor som har en enkelt linje med IF-setning som verifiserer eller sjekker verdien 3.

Hvis verdien “3” er større enn “2”, vises popup-melding med meldingen, dvs. “3 er større enn 2”. Hvis du endrer verdien fra “ 2 ” til “ 5 ” i VBA-koden og kjører den, skjer det ingenting. Fordi 3 ikke er større enn 5.

Du kan kjøre makroen ved å klikke på Kjør sub- knappen eller ved å trykke på F5 . Pop-upvinduet i VBA-meldingsboksen vises med meldingen som sier at "3 er større enn 2"

VBA IF-THEN-ELSE-uttalelse - eksempel # 2

I dette scenariet brukes IF & ELSE- setningen for å utføre to forskjellige forhold. Formatet eller syntaks for å skrive kode er:

Hvis så

Statement1

Ellers:

Statement2

Slutt om

HVIS du kjører en nedenfor nevnt kode, dvs. hvis cellen B4 inneholder en verdi 7, vil du få en meldingsboks som viser "Cell B4 har verdi 7" og hvis cellen B4 inneholder en annen verdi enn 7, vil du få en meldingsboks som viser “Cell B4 har en annen verdi enn 7”.

Her, basert på verdien som er til stede i cellen, oppstår forskjellige resultater (dvs. mer enn en tilstand).

Kode:

 Sub IF_THEN_ELSE () Hvis Range ("B4"). Verdi = "7" Da har MsgBox "Cell B4 verdi 7" Annet MsgBox "Cell B4 har en annen verdi enn 7" End If End Sub 

Nå inneholder cellen "B4" en verdi 7, hvis jeg kjører over koden, vises den første tilstanden.

Anta at jeg endret verdien på celle “B4” fra 7 til 5 som vist nedenfor.

Kode:

 Sub IF_THEN_ELSE () Hvis Range ("B4"). Verdi = "5" Da har MsgBox "Cell B4 verdi 7" Annet MsgBox "Cell B4 har en annen verdi enn 7" End If End Sub 

Så hvis jeg kjører over VBA IF-THEN-ELSE-kode, vises den andre tilstanden.

IF-THEN-ELSEIF-ELSE - Eksempel # 3

Det er en avansert form for VBA hvis uttalelse, format eller syntaks for å skrive en kode er

HVIS (betingelse1 er sant)

(Statement1)

ELSEIF (betingelse2 er sant)

(Statement2)

ELLERS

(Statement3)

Slutt om

Fordelen med denne koden er at ELSE IF kan brukes enkeltvis eller flere ganger (10 eller 100 ganger eller mer) i henhold til kravet ditt.

Kode:

 Sub IF_THEN_ELSEIF_ELSE () Hvis 5> 8 Da er MsgBox "5 større enn 8" ElseIf 6> 8 Da er MsgBox "6 større enn 8" ElseIf 7> 8 Da er MsgBox "7 større enn 8" Else MsgBox "5, 6 eller 7 er mindre enn 8 "End If End Sub 

La oss sjekke ut hvordan koden ovenfor fungerer, Excel vil starte eller behandle den første setningen, når den legger merke til at den er falsk, så vil den gå videre til den neste. Her er alle ElseIf argumenter eller betingelser er usanne, derfor vil den gå videre til betingelsen er sann og til slutt resultat av Else-argumentet vises som et endelig resultat av IF-uttalelsen. dvs. MsgBox “5, 6 eller 7 er mindre enn 8”, som er et SANT argument.

Når du velger og kjører koden ved å klikke på Kjør under- knappen eller ved å trykke på F5 . Pop-upvinduet i VBA-meldingsboksen med en melding om “5, 6 eller 7 er mindre enn 8”, noe som er et sant argument

Nå kan du lagre denne makrokodene ved å gi nytt navn til VBA_IF_STATEMENT under navneseksjonen på egenskaper-fanen

Ting å huske

  • Når den ene linjen i IF Then statement brukes, trenger du ikke å bruke End IF til slutt. Men når vi deler den inn i mer enn en linje, så må End If-setningen brukes.
  • I VBA, IF-THEN-ELSEIF-ELSE-uttalelsen, bør ElseHvis argumenter alltid plasseres før Else-argumentet.

Anbefalte artikler

Dette er en guide til VBA IF-uttalelser. Her diskuterte vi hvordan du bruker IF-setninger i Excel VBA sammen med praktiske eksempler og nedlastbar Excel-mal. Du kan også gå gjennom andre foreslåtte artikler–

  1. VBA Arrays i Excel
  2. Veiledning for VBA-nummerformat
  3. Guide to VBA Find
  4. Hvordan bruke VBA Do While Loop?

Kategori: