Hvordan bruges If Else Statement i VBA? (med eksempler)

Indholdsfortegnelse

Excel VBA IF Else Statement

Der er ingen IF Else-sætning i regnearket, og den kan kun bruges i VBA-koden, mens vi arbejder i VBA kan vi give en betingelse, der er If-betingelseserklæringen, og hvis den er opfyldt et bestemt sæt instruktioner, så udføres den, og hvis betingelsen mislykkes instruktionen, så udføres ellers udsagn.

VBA er ikke anderledes, når det kommer til logiske tests. Det fungerer på samme måde som hvordan det fungerer i almindelige regneark. Af alle logiske funktioner bruges “IF” -funktionen mest fra partiet. Ved hjælp af IF kan vi gennemføre en logisk test og nå frem til beslutningerne, hvis den logiske test er opfyldt, og også nå alternative beslutninger, hvis den logiske test ikke er opfyldt.

Nedenfor er syntaksen for IF Else-tilstanden.

HVIS Så hvis den logiske test er SAND Ellers hvis den logiske test er FALSK Afslut HVIS

Hvad er VBA IF Then Else Statement?

Når den medfølgende logiske test er FALSK, har vi brug for en alternativ opgave at udføre som en del af koden. Så “HVIS ELSE” betyder, hvis den logiske test er FALSK, hvad skal der ellers gøres.

For bedre at forstå nedenstående eksempel har vi kun leveret resultatet som “10 er større”, hvis den logiske test er SAND. Alligevel kan vi i det FALSKE logiske resultat levere det alternative resultat, da “10 er mindre”.

Så når de logiske tests er leveret, og den SANDE delekode er skrevet i den næste linje, skal du indtaste ordet “ELSE”.

ELSE betyder, at hvis den logiske test ikke er SAND, har vi brug for resultatet, da “10 er mindre”.

Kode:

Sub IF_Else_Example1 () Hvis 10> 11 Så er MsgBox "10 større" Ellers MsgBox "10 er mindre" End If End Sub

Nu giver vores kode mindst et af ovenstående resultater. Udfør koden og se resultatet.

Da vi har leveret det alternative resultat, hvis den logiske test er FALSK, har den vist det alternative resultat som “10 er mindre”, fordi 10 er mindre end det andet nummer 11.

Eksempel

Se f.eks. Nedenstående data.

Med disse data er vi nødt til at nå frem til status baseret på "omkostningerne" for hvert produkt. For at ankomme status nedenfor er kriterierne.

Hvis kostprisen er> 50, skal status være " Dyrt ", ellers skal status være " Ikke dyrt ."

Her er vi nødt til at teste kostprisen, dvs. logisk test, om kostprisen er> 50 eller ej. Hvis den logiske test er SAND, dvs. kostprisen er mere end 50, har vi brug for status som "Dyrt", og hvis den logiske test er FALSK, dvs. kostprisen er mindre end 50, har vi brug for det alternative resultat som "Ikke dyr."

Ok, lad os skrive koden nu. Før det skal du kopiere og indsætte ovenstående tabel i et Excel-regneark.

Trin 1: Start delproceduren.

Sub IF_ELSE_Example2 () Afslut Sub

Trin 2: Erklær variablen som en heltal datatype.

Dim k som heltal

Trin 3: Da vi har brug for at teste mere end en celleværdi, er vi nødt til at anvende FOR VBA LOOP til at løkke gennem cellerne og anvende logikken for alle cellerne.

Vi er nødt til at anvende logiske test fra 2. række til 8 th rækken, så starte for LOOP fra 2 til 8.

Kode:

For k = 2 Til 8 Næste k

Trin 4: Inde i denne sløjfe skal vi udføre den logiske test. Så åbn IF-sætningen, og vælg den første celle ved hjælp af CELLS-egenskaben.

Kode:

Hvis celler (k, 2). Værdi> 50 derefter

Her betyder celler (k, 2) række (værdi af k) og kolonne 2.

Trin 5: Hvis denne celleværdi er> 50, har vi brug for resultatet som "Dyrt" i den næste kolonnecelle. Så kode vil være -

Kode:

Celler (k, 3) .Value = "Dyrt"

Trin 6: Hvis testen ikke er SAND, har vi brug for ELSE-udsagnets resultater, dvs. "Ikke dyrt."

Kode:

Sub IF_ELSE_Example2 () Dim k som heltal For k = 2 til 8 hvis celler (k, 2). Værdi> 50 derefter celler (k, 3). Værdi = "dyre" andre celler (k, 3). Værdi = "ikke Dyrt "Afslut hvis næste k Afslut sub

Denne kode slår igennem fra 2. til 8. række tester numrene og når resultatet baseret på kostprisen.

På denne måde kan vi bruge If-Else til at nå frem til alternative resultater.

Ting at huske

  • Ellers erklæring er til en FALSK logisk test.
  • Hvis du vil anvende mere end to logiske tests i excel, skal vi bruge ELSE IF-sætningen.
  • I tilfælde af opgaveudførelse i mere end en celle er vi nødt til at bruge sløjfer.
  • Hvis Else-udsagn kun kan teste en logisk test.

Interessante artikler...