Excel VBA še če

VBA Else Če omogoča analizo stanja in ustrezno izvedbo dejanja. ČE pogoj preveri, ali je dobavljeni pogoj TRUE ali FALSE, če je pogoj TRUE, bo vrnil dodeljeno vrednost Value, če je True in vrne Value IF False, če je rezultat FALSE.

Logika pogojev IF v formuli regular excel in formula VBA je enaka. V tem članku bom zajel popolni pogoj VBA IF.

Sintaksa VBA Če izjava

Najprej si oglejte skladnjo izjave IF v VBA.

To je zelo podobno naši funkciji delovnega lista IF. Edina razlika je v tem, da moramo v funkcijo vstaviti besedo THEN, tudi del pogoja IF je neobvezen za razliko v našem običajnem stanju IF in konec funkcije moramo omeniti kot End If .

Pravzaprav bo obstajal še en argument, če so pogoji za preizkus več kot en pogoj in se ta del imenuje stavek ELSE IF. To je tako kot naše ugnezdeno stanje IF v naših izračunih delovnega lista. ELSE IF bo prišel v vrednost slike, če je pogoj FALSE, moramo preizkusiti več pogoja s pogojem ELSE IF.

V tem članku bomo videli več stanja ELSE IF v praktičnem svetu.

Kako uporabiti VBA Else v primeru izjave?

Razumejmo, kako uporabiti VBA Else If Statement z nekaj primeri.

Predlogo VBA Else If Excel lahko prenesete tukaj - VBA Else If Excel Template

Preprosta izjava, če izjava - primer št. 1

Zdaj je dovolj teoretična razlaga, tudi če niste ničesar razumeli, da bi vas skrbelo. V praktičnem primeru boste ujeli logiko.

Predpostavimo, da imate vrednost v celici A2 in želite preveriti, ali je število večje od 100 ali ne. Če je vrednost večja od 100, potrebujemo vrednost v celici B2 kot "Več kot 100". Spodaj koda bo opravila zahtevano nalogo.

Koda:

 Pod IF_Example1 () Če obseg ("A2"). Vrednost> 100, potem razpon ("B2"). Vrednost = "Več kot 100" Konec, če konec Sub 

Nato zaženite to kodo s tipko F5 ali ročno, kot je prikazano na posnetku zaslona. Nato lahko rezultat vidimo v celici B2.

Če spremenite vrednost v celici A2 v 99 in zaženite kodo. Koda ne bo vrnila ničesar, ker je vrednost nižja od 100 in nismo dali nobenega rezultata, če je test FALSE, to bomo videli v naslednjem primeru.

Če z izjavo Else - primer # 2

Videli smo, kako deluje posamezen IF s pogojem TRUE. Zdaj bomo videli, kako delovati, če je priloženi pogoj LAHKO.

V trenutni kodi za tem, ko je v naslednji vrstici vnesena beseda Else, vnesena vrednost True.

Koda:

 Pod IF_Example2 () Če obseg ("A2"). Vrednost> 100, nato razpon ("B2"). Vrednost = "več kot 100". 

V naslednjo vrstico napišite kodo za napačno vrednost.

Koda:

 Pod IF_Example2 () Če obseg ("A2"). Vrednost> 100 Potem razpon ("B2"). Vrednost = "Več kot 100" Drugi obseg ("B2"). Vrednost = "Manj kot 100" Konec, če konec Pod 

Nato zaženite to kodo s tipko F5 ali ročno, kot je prikazano na posnetku zaslona. Če je vrednost večja od 100, bi bil rezultat v celici B2 "Več kot 100".

Če je vrednost manjša od 100, bi bil rezultat "Manjši od 100".

Vstavljeno, če izjava z drugim, če - primer # 3

Kadar želimo preizkusiti več pogojev, moramo v pogoju IF uporabiti več stavkov IF. Toda v VBA moramo za preizkus več pogojev uporabiti besedo ELSE IF.

Na primer, v celici A2, če je vrednost večja od 200, potrebujemo rezultat kot "Več kot 200" v celici B1.

Če je vrednost večja od 100, potrebujemo rezultat kot "Več kot 100" v celici B2.

Če je vrednost manjša od 100, moramo rezultat v celici B2 dobiti kot "Manj kot 100".

Korak 1: Po vnosu vrednosti TRUE v naslednjo vrstico vnesite besedo ELSE IF.

Koda:

 Pod IF_Example3 () Če obseg ("A2"). Vrednost> 200 Potem razpon ("B2"). Vrednost = "Več kot 200" ElseIf obseg ("A2"). Vrednost> 100 Potem razpon ("B2"). = "Več kot 100" End If End Sub 

2. korak: Ker smo že preizkusili dva argumenta, imamo samo en pogoj. Zdaj v naslednji vrstici predložite končni rezultat testa z izjavo ELSE.

Koda:

 Pod IF_Example3 () Če obseg ("A2"). Vrednost> 200 Potem razpon ("B2"). Vrednost = "Več kot 200" ElseIf obseg ("A2"). Vrednost> 100 Potem razpon ("B2"). = "Več kot 100" drug obseg ("B2"). Vrednost = "Manj kot 100" Konec, če konec Sub 

3. korak: Nato zaženite to kodo s tipko F5 ali ročno, kot je prikazano na posnetku zaslona, ​​da vidite rezultate.

Rezultat 1:

Rezultat 2:

Rezultat 3:

Gnezdi, če z zanko - primer # 4

To je napredni primer Nested IF z zanko. Predpostavimo, da imate prodajno tabelo z 12-mesečnimi podatki.

V stolpcu stanja potrebujemo rezultat na naslednji način.

  • Če je prodajna vrednost večja od 7000, bi moral biti rezultat "Odličen"
  • Če je prodajna vrednost večja od 6500, bi moral biti rezultat zelo dober
  • Če je prodajna vrednost več kot 6000, bi moral biti rezultat "dober"
  • Če je vrednost prodaje večja od 4000, mora biti rezultat "Ni slabo"
  • Če so vsi rezultati NAVODNI, bi moral biti rezultat "slab"

Za izvedbo tega testa potrebujemo spodnjo kodo, ki je kombinacija IF z ELSE IF in LOOP.

Koda:

 Pod IF_Example4 () Dim i kot celo število i = 2 Za i = 2 do 13 Če celice (i, 2) .Value> = 7000, potem celice (i, 3) .Value = "Odlično" ElseIf Celice (i, 2). Vrednost> = 6500 Potem so celice (i, 3) .Value = "Zelo dobro" ElseIf Cells (i, 2) .Value> = 6000 Potem Cells (i, 3) .Value = "Dobro" ElseIf Cells (i, 2) .Value> = 4000 Nato celice (i, 3) .Value = "Ni slabo" Druge celice (i, 3) .Value = "Slabo" konec, če je naslednja i končna pod 

Nato zaženite to kodo s tipko F5 ali ročno, kot je prikazano na posnetku zaslona, ​​če želite videti rezultate.

Stvari, ki jih je treba zapomniti

  • Stavek ELSE IF zahteva kodo rezultata v isti vrstici, ne pa v naslednji vrstici in zahteva tudi, da THEN stavek preide na naslednji stavek.
  • Če stavek END IF ni priložen, bomo dobili spodnjo napako.

  • Operator ni nič drugega kot enak stavku IF.
  • Tako kot funkcijo delovnega lista lahko tudi v stavku IF uporabimo stavek AND & OR.

Priporočeni članki

To je vodnik za izjavo VBA Else If. Tu smo razpravljali o VBA Else Če in kako uporabljati Excel VBA Else If, ​​skupaj z nekaj praktičnimi primeri in naloženo predlogo Excela. Ogledate si lahko tudi druge naše predlagane članke -

  1. Kako uporabljati VBA Select Case?
  2. Kako uporabljati funkcijo VBA Find?
  3. Vodnik po funkciji VBA TRIM
  4. Vodnik in primeri zanke VBA

Kategorija: