VBA If - Then - Else pareiškimas programoje "Excel" (4 pavyzdžiai)

  • Pasidalinti
Hugh West

Programavimo kalbose sąlyginiai teiginiai naudojami norint atlikti tam tikrus veiksmus, priklausomai nuo nurodytos sąlygos. Šiame straipsnyje parodysime, kas yra Jei - Tada - Kitaip sąlyginis teiginys VBA "Excel" yra ir kaip ja naudotis.

Atsisiųsti darbo knygą

Nemokamą "Excel" pratybų sąsiuvinį galite atsisiųsti iš čia.

If-Then-Else in VBA.xlsm

Įvadas į "If - Then - Else" teiginį VBA

VBA If - Then - Else Sąlyginis teiginys dažniausiai naudojamas sąlygų vykdymo eigai nustatyti. Jei sąlyga yra teisinga, tada atliekamas tam tikras veiksmų rinkinys, o jei sąlyga yra klaidinga, tada atliekamas kitas veiksmų rinkinys.

  • Sintaksė
 Jei sąlyga Tada [teiginiai] [Kitaip else_statements] 

Arba,

 Jei sąlyga Tada [teiginiai] [Kitaip [else_statements]]] End If 

Čia,

Argumentas Privalomas / pasirenkamas Aprašymas
būklė Reikalinga Skaitmeninė išraiška arba eilutės išraiška, kai įvertinama, ar išraiška yra Tiesa arba Klaidingas Jei būklė yra Null, laikoma, kad Klaidingas .
pareiškimai Pasirinktinai Vienos eilutės forma, kurioje nėra Kitaip Vienas ar daugiau teiginių turi būti atskirti dvitaškiais. Jei būklė yra . Tiesa , tada šis teiginys įvykdomas.
else_statements Pasirinktinai Atliekamas vienas ar daugiau teiginių, jei prieš tai nebuvo būklė yra . Tiesa .

4 VBA If - Then - Else teiginio naudojimo pavyzdžiai programoje "Excel

Šiame skyriuje sužinosite, kaip naudoti If-Then-Else svetainėje VBA kodą su 4 pavyzdžiais.

1. Raskite didžiausią skaičių tarp dviejų skaičių su If - Then - Else teiginiu

Jei turite du skaičius ir norite sužinoti, kuris iš jų yra didesnis (arba mažesnis), galite naudoti If-Then-Else teiginys VBA .

Žingsniai:

  • Paspauskite Alt + F11 klaviatūroje arba eikite į skirtuką Programuotojas -> "Visual Basic atidaryti "Visual Basic" redaktorius .

  • Iššokančiame kodo lange meniu juostoje spustelėkite Insert -> Modulis .

  • Nukopijuokite šį kodą ir įklijuokite jį į kodo langą.
 Private Sub BiggestNumber() Dim Num1 As Integer Dim Num2 As Integer Num1 = 12345 Num2 = 12335 If Num1> Num2 Then MsgBox "1-asis skaičius yra didesnis už 2-ąjį skaičių" ElseIf Num2> Num1 Then MsgBox "2-asis skaičius yra didesnis už 1-ąjį skaičių" Else MsgBox "1-asis ir 2-asis skaičiai yra lygūs" End If End Sub 

Dabar jūsų kodas paruoštas paleisti.

Čia lyginame du skaičius 12345 ir 12335 , kad sužinotumėte, kuris iš jų yra didesnis. Šis procesas paprastai puikiai tinka norint rasti didelius skaičius dideliame duomenų rinkinyje.

  • Paspauskite F5 klaviatūroje arba meniu juostoje pasirinkite Run -> Run Sub/UserForm Taip pat galite tiesiog spustelėti maža piktograma "Play submeniu juostoje, kad paleistumėte makrokomandą.

Rezultatą gausite "Excel MsgBox

Mūsų atveju, skaičius 12345 - saugomi kintamajame Skaičius1 - yra didesnis už skaičių 12335 , Skaičius2 . Taigi MsgBox rodo, kad Pirmasis skaičius yra didesnis už antrąjį skaičių .

Skaityti daugiau: "Excel" formulė atsitiktiniam skaičiui generuoti (5 pavyzdžiai)

2. Studentų rezultatų tikrinimas naudojant If - Then - Else teiginį VBA

Šiuo teiginiu galite patikrinti, ar mokinys išlaikė ar neišlaikė egzamino. VBA kodas.

Žingsniai:

  • Kaip ir anksčiau, atidarykite "Visual Basic" redaktorius Kūrėjas skirtukas ir Įdėkite a Modulis kodo lange.
  • Kodo lange nukopijuokite ir įklijuokite šį kodą.
 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 

Dabar jūsų kodas paruoštas paleisti.

Šis kodas patikrins, ar ląstelė D5 turi vertę, kuri yra didesnė už 33 Jei taip, bus rodoma viena išvestis, o jei ne, bus rodoma kažkas kita.

  • Paleisti makrokomandą ir gausite rezultatą pagal savo kodą.

Pažvelkite į pirmiau pateiktą duomenų rinkinį su rezultatu, Cell D5 turi . 95 o tai tikrai daugiau nei 33 , todėl rodomas Rezultatas yra "Pass". . Bet jei paleisime Cell D7 (22), tada būtų rodoma kitaip.

Skaityti daugiau: Kaip naudoti VBA atvejo teiginį (13 pavyzdžių)

Panašūs skaitiniai

  • Kaip naudoti "Log" funkciją "Excel VBA" (5 tinkami pavyzdžiai)
  • VBA LTrim funkcijos naudojimas programoje "Excel" (4 pavyzdžiai)
  • Kaip naudoti "Excel" VBA funkciją FileDateTime (3 naudojimo būdai)
  • VBA mod operatoriaus naudojimas (9 pavyzdžiai)
  • VBA EXP funkcija programoje "Excel" (5 pavyzdžiai)

3. Atnaujinti komentarus mokinio įvertinime naudojant kelis If - Then - Else teiginius VBA programoje

Išmokote, kaip išgauti, ar mokinys išlaikė egzaminą, ar ne, naudodami vieną If-Then-Else teiginį, bet šį kartą sužinosite apie Keli If-Then-Else teiginius, pateikdami tokį pavyzdį.

Mes paleisime VBA kodą, kad užpildytumėte šiuos Komentaras langus pagal kelias sąlygas.

Žingsniai:

  • Kaip ir anksčiau, atidarykite "Visual Basic" redaktorius Kūrėjas skirtukas ir Įdėkite a Modulis kodo lange.
  • Kodo lange nukopijuokite ir įklijuokite šį kodą.
 Sub UpdateComment() For Each grade In Range("D5:D10") If grade = "A" Then grade.Offset(0, 1).Value = "Puikus darbas" ElseIf grade = "B" Then grade.Offset(0, 1).Value = "Laikykis" ElseIf grade = "C" Then grade.Offset(0, 1).Value = "Reikia pagerinti" Else grade.Offset(0, 1).Value = "Tėvų ir mokytojų susitikimas" End If Next grade EndSub 

Dabar jūsų kodas paruoštas paleisti.

Šis kodas spausdins komentarus pagal mokinių gautą įvertinimą.

  • Paleisti šį kodą ir pamatysite toliau pateiktą paveikslėlį, kuriame komentarų laukai užpildyti atitinkamais rezultatais.

4. If-Then-Else teiginys, skirtas kardinalioms kryptims atnaujinti pagal "Excel" kodą

Taip pat galite naudoti If-Then-Else surasti kardinalias kryptis pagal pateiktą indikatoriaus kodą. Pažvelkite į toliau pateiktą paveikslėlį, kuriame kryptis sužinosime pagal pateiktus inicialus.

Žingsniai:

  • Atviras "Visual Basic" redaktorius Kūrėjas skirtukas ir Įdėkite a Modulis kodo lange.
  • Kodo lange nukopijuokite ir įklijuokite šį kodą.
 Sub UpdateDir() For Each iDirection In Range("B5:B8") If iDirection = "N" Then iDirection.Offset(0, 1).Value = "North" ElseIf iDirection = "S" Then iDirection.Offset(0, 1).Value = "South" ElseIf iDirection = "E" Then iDirection.Offset(0, 1).Value = "East" Else iDirection.Offset(0, 1).Value = "West" End If Next iDirection EndSub 

Dabar jūsų kodas paruoštas paleisti.

  • Paleisti šį kodą ir atitinkamose ląstelėse gausite krypčių pavadinimus.

Jei norite rasti tik vieną kryptį pagal kodą, galite naudoti toliau pateiktą kodą.

 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 

Šis kodas paims reikšmę iš langelio B5 ir pagal jį grąžina rezultatą ląstelėje C5 .

Pavyzdžiui, jei rašote " N " in Cell B5 , jis suteiks jums " Šiaurės ; jei rašote " S " in Cell B5 , jis parodys jums " Pietų " in Cell C5 .

Išvada

Šiame straipsnyje buvo parodyta, kaip naudoti Jei - Tada - Kitaip teiginys "Excel" programoje su VBA . tikiuosi, kad šis straipsnis jums buvo labai naudingas. Drąsiai klauskite, jei turite klausimų šia tema.

Hugh Westas yra labai patyręs Excel treneris ir analitikas, turintis daugiau nei 10 metų patirtį šioje srityje. Jis yra įgijęs apskaitos ir finansų bakalauro bei verslo administravimo magistro laipsnius. Hugh turi aistrą mokymui ir sukūrė unikalų mokymo metodą, kurį lengva sekti ir suprasti. Jo ekspertinės žinios apie „Excel“ padėjo tūkstančiams studentų ir specialistų visame pasaulyje tobulinti savo įgūdžius ir tobulėti savo karjeroje. Savo tinklaraštyje Hugh dalijasi savo žiniomis su pasauliu, siūlydamas nemokamus „Excel“ vadovėlius ir internetinius mokymus, kad padėtų asmenims ir įmonėms išnaudoti visą savo potencialą.