Izjava VBA If - Then - Else v Excelu (4 primeri)

  • Deliti To
Hugh West

Pogojni stavki se v programskih jezikih uporabljajo za izvajanje niza dejanj glede na določen pogoj. V tem članku vam bomo predstavili, kaj je Če - Potem - Ali pogojno izjavo v VBA Excel je in kako ga uporabljati.

Prenos delovnega zvezka

Brezplačni delovni zvezek Excel lahko prenesete s tega mesta.

If-Then-Else v VBA.xlsm

Uvod v izjavo If - Then - Else v programu VBA

VBA Če - Potem - Drugače Pogojna izjava se uporablja predvsem za odločanje o poteku izvajanja pogojev. Če je pogoj resničen, se izvede določen niz dejanj, če pa je pogoj napačen, se izvede drug niz dejanj.

  • Sintaksa
 Če pogoj Potem [izjave] [Drugače else_izjave] 

Ali,

 Če pogoj Potem [izjave] [Drugače [else_izjave]] Konec Če 

Tukaj,

Argument Obvezno/izbirno Opis
stanje Zahtevano Številčni izraz ali izraz v nizu, pri katerem se oceni, ali je izraz Resnično ali Lažno . Če je stanje je Null, se šteje, da je Lažno .
izjave Izbirno Enovrstični obrazec, ki nima Drugače Ena ali več izjav mora biti ločena s podpičjem. stanje je . Resnično , se ta izjava izvrši.
else_statements Izbirno Izvede se ena ali več izjav, če ni predhodne stanje je . Resnično .

4 primeri uporabe izjave VBA If - Then - Else v Excelu

V tem razdelku boste izvedeli, kako uporabljati Če-če-češ-ali na spletnem mestu VBA kodo s 4 primeri.

1. Poiščite največje število med dvema številoma z izjavo If - Then - Else

Če imate dve števili in želite ugotoviti, katero je večje (ali manjše), lahko uporabite Če-če-češ-ali izjavo v VBA .

Koraki:

  • Pritisnite Alt + F11 na tipkovnici ali odprite zavihek Razvijalec -> Visual Basic da odprete Urejevalnik Visual Basic .

  • V pojavnem oknu kode v menijski vrstici kliknite Vstavljanje -> Modul .

  • Kopirajte naslednjo kodo in jo prilepite v okno s kodo.
 Private Sub BiggestNumber() Dim Num1 As Integer Dim Num2 As Integer Num1 = 12345 Num2 = 12335 If Num1> Num2 Then MsgBox "1. številka je večja od 2. številke" ElseIf Num2> Num1 Then MsgBox "2. številka je večja od 1. številke" Else MsgBox "1. in 2. številka sta enaki" End If End Sub 

Vaša koda je zdaj pripravljena za zagon.

Tu primerjamo dve številki 12345 in . 12335 , da bi ugotovili, katera je večja. Ta postopek je običajno odličen za iskanje velikih števil v velikem naboru podatkov.

  • Pritisnite F5 na tipkovnici ali v menijski vrstici izberite Run -> Run Sub/UserForm Lahko tudi kliknete na majhna ikona za predvajanje v podmeniju za zagon makra.

Rezultat boste dobili v Excelovem MsgBox

V našem primeru je število 12345 - shranjena v spremenljivki Številka1 - je večja od števila 12335 , Številka2 . Torej nam MsgBox pokaže, da je Prvo število je večje od drugega števila .

Preberite več: Excelova formula za generiranje naključne številke (5 primerov)

2. Preverjanje rezultata študenta z uporabo izjave If - Then - Else v VBA

Ali je učenec uspešno ali neuspešno opravil izpit, lahko preverite s to izjavo v VBA koda.

Koraki:

  • Na enak način kot prej odprite Urejevalnik Visual Basic iz Razvijalec zavihek in Vstavite a Modul v oknu kode.
  • V oknu s kodo kopirajte naslednjo kodo in jo prilepite.
 Sub CheckResult() If Range("D5").Value> 33 Then MsgBox "John's Result is Pass" Else MsgBox "John's Result is Fail" End If End Sub 

Vaša koda je zdaj pripravljena za zagon.

Ta koda bo preverila, ali je celica D5 ima vrednost, ki je večja od 33 Če je tako, bo prikazan en izhod, če ni tako, bo prikazano nekaj drugega.

  • Spustite in dobili boste rezultat v skladu z vašo kodo.

Oglejte si zgornji nabor podatkov z rezultatom, celica D5 ima . 95 kar je vsekakor več kot 33 , zato se prikaže Rezultat je Pass . Če pa zaženemo kodo za celico D7 (22), bi se prikazalo drugače.

Preberite več: Kako uporabiti izjavo o primeru VBA (13 primerov)

Podobna branja

  • Kako uporabiti funkcijo Log v programu Excel VBA (5 primernih primerov)
  • Uporaba funkcije VBA LTrim v Excelu (4 primeri)
  • Kako uporabljati funkcijo VBA FileDateTime v Excelu (3 uporabe)
  • Uporaba operaterja VBA Mod (9 primerov)
  • Funkcija VBA EXP v Excelu (5 primerov)

3. Posodobitev komentarjev v oceni učenca z uporabo več stavkov If - Then - Else v VBA

Naučili ste se, kako z enim samim Če-če-češ-ali vendar boste tokrat spoznali Večkratno če-če-ali-ali z naslednjim primerom.

Izvedli bomo VBA kodo za izpolnjevanje teh Komentar: polja na podlagi več pogojev.

Koraki:

  • Na enak način kot prej odprite Urejevalnik Visual Basic iz Razvijalec zavihek in Vstavite a Modul v oknu kode.
  • V oknu s kodo kopirajte naslednjo kodo in jo prilepite.
 Sub UpdateComment() For Each grade In Range("D5:D10") If grade = "A" Then grade.Offset(0, 1).Value = "Super delo" ElseIf grade = "B" Then grade.Offset(0, 1).Value = "Nadaljuj" ElseIf grade = "C" Then grade.Offset(0, 1).Value = "Potrebno izboljšati" Else grade.Offset(0, 1).Value = "Sestanek staršev in učitelja" End If Next grade EndPod 

Vaša koda je zdaj pripravljena za zagon.

Ta koda bo natisnila komentarje glede na oceno, ki so jo dosegli učenci.

  • Spustite to kodo in si oglejte naslednjo sliko, kjer so polja za komentarje zapolnjena z ustreznimi rezultati.

4. Izjava If-Then-Else za posodobitev kardinalnih smeri na podlagi kode v Excelu

Uporabite lahko tudi Če-če-češ-ali da na podlagi podane indikatorske kode poiščemo kardinalne smeri. Oglejte si naslednjo sliko, na kateri bomo na podlagi podanih začetnic poiskali smeri.

Koraki:

  • Odpri Urejevalnik Visual Basic iz Razvijalec zavihek in Vstavite a Modul v oknu kode.
  • V oknu s kodo kopirajte naslednjo kodo in jo prilepite.
 Sub UpdateDir() Za vsako iSmer v območju("B5:B8") Če iSmer = "N" Potem iSmer.Offset(0, 1).Value = "Sever" Če iSmer = "S" Potem iSmer.Offset(0, 1).Value = "Jug" Če iSmer = "E" Potem iSmer.Offset(0, 1).Value = "Vzhod" V nasprotnem primeru iSmer.Offset(0, 1).Value = "Zahod" End If Next iSmer EndPod 

Vaša koda je zdaj pripravljena za zagon.

  • Spustite to kodo in dobili boste imena smeri v ustreznih celicah.

Če želite poiskati samo eno smer na podlagi kode, lahko uporabite spodnjo kodo.

 Sub UpdateDirections() Dim iDirection As String Dim iDirectionName As String iDirection = Range("B5").Value If iDirection = "N" Then iDirectionName = "North" ElseIf iDirection = "S" Then iDirectionName = "South" ElseIf iDirection = "E" Then iDirectionName = "East" Else iDirectionName = "West" End If Range("C5").Value = iDirectionName End Sub 

Ta koda bo prevzela vrednost iz celice B5 in v skladu z njim vrne rezultat v celici C5 .

Če na primer napišete " N " v reviji Cell B5 , vam bo dal " Sever ; če napišete " S " v reviji Cell B5 vam bo pokazal " Južni " v reviji Cell C5 .

Zaključek

V tem članku je bilo prikazano, kako uporabiti Če - Potem - Ali v Excelu z VBA Upam, da vam je ta članek zelo koristil. Če imate kakršna koli vprašanja v zvezi s to temo, vas prosim, da jih postavite.

Hugh West je zelo izkušen trener Excela in analitik z več kot 10-letnimi izkušnjami v industriji. Po izobrazbi je diplomirani računovodstvo in finance ter magisterij poslovne administracije. Hugh ima strast do poučevanja in je razvil edinstven pristop k poučevanju, ki ga je enostavno slediti in razumeti. Njegovo strokovno znanje o Excelu je pomagalo na tisoče študentom in strokovnjakom po vsem svetu, da so izboljšali svoje sposobnosti in se izkazali v karieri. Prek svojega bloga Hugh deli svoje znanje s svetom, ponuja brezplačne vadnice za Excel in spletno usposabljanje, ki posameznikom in podjetjem pomaga doseči njihov polni potencial.