VBA lülituskarp - Näited Exceli VBA lüliti avalduse kasutamiseks

Lang L: none (table-of-contents)

Exceli VBA lüliti juhtum

Switch Case või Select Case on avaldus, mis on VBA-s saadaval loogiliste testide läbiviimiseks, kus see töötab alternatiivina IF-THEN avaldusele VBA-s. Lüliti juhtumi abil saame läbi viia mitu loogilist testi ja saada tulemusi mitme tulemuse põhjal.

Allpool on lause Case / Select Case süntaks.

Kood:

Valige juhtumi 1 väärtus, kui juhtumi 1 test on tõene Juhtumi 2 väärtus, kui juhtumi 2 test on tõene Juhtumi 3 väärtus, kui juhtumi 3 test on tõene juhtumi muu väärtus, kui ükski ülaltoodud juhtumitest pole tõene

: Mis on loogiline test? Peame siin testi sisestama.

Juhtum 1, juhtum 2: Igal juhul peame Excelis testima mitut loogilist testi.

Kuidas kasutada VBA Switchi juhtumi avaldust?

Näide 1

Lahtrisse A1 olen sisestanud väärtuseks 550.

Testime seda numbrit lülitusjuhtude avalduste abil ja jõuame olekusse „Rohkem kui 500”, kui väärtus on suurem kui 500, muidu jõuame olekusse „Alla 500”.

Esmalt avage protseduur VBA Sub.

Kood:

Sub Switch_Case () Lõpp Sub

Avage VBA-s Select Case Statement ja sisestage loogilise testivahemiku („A2“) väärtus

Kood:

Sub Switch_Case () Valige juhtumivahemik ("A2"). Väärtus End Sub

Nüüd sisestage esimene juhtum, kuna juhtum on> 500.

Kood:

Sub Switch_Case () Valige juhtumivahemik ("A2"). Väärtuse juhtum on> 500 End Sub

Kui see juhtum on tõsi, siis millist tulemust me lahtris B, 2 vajame, st "Rohkem kui 500".

Kood:

Sub Switch_Case () Valige juhtumivahemik ("A2"). Väärtuse juhtum on> 500 vahemik ("B2"). Väärtus = "Rohkem kui 500" End Sub

Nüüd on meil ainult üks tulemus, st Case Else avaldus. Kui esimene juhtum on VÄÄR, siis vajame tulemust kui “Alla 500”.

Kood:

Sub Switch_Case () Valige juhtumivahemik ("A2"). Väärtuse juhtum on> 500 vahemik ("B2"). Väärtus = "Rohkem kui 500" juhtumi muu vahemik ("B2"). Väärtus = "Alla 500" Lõpp alam

Nüüd sulgege avaldus, kasutades lauset “End Select”.

Kood:

Sub Switch_Case () Valige juhtumivahemik ("A2"). Väärtuse juhtum on> 500 vahemik ("B2"). Väärtus = "Rohkem kui 500" juhtumi muu vahemik ("B2"). Väärtus = "Alla 500" Lõppvalik Lõpeta alam

Käivitage kood, mille väärtuse saame lahtrist B2.

Kuna lahtris A2 on väärtus suurem kui 500, saime tulemuseks väärtuse „Rohkem kui 500”.

Näide 2

Nüüd näeme rohkem juhtuminäiteid. Allpool on üliõpilase tulemus eksamil.

Selle skooriga peame jõudma klassi, sest allpool on kriteeriumid.

  • Hinne> = 85, hinne = „kaugus“
  • Hinne> = 60, hinne = „esimene“
  • Hinne> = 50, hinne = „teine“
  • Hinne> = 35, hinne = „pass”
  • Kui midagi muud Hinne = "Ebaõnnestunud".

Kood:

Alamlüliti_juht1 ()

 Hämardav skoor täisarvuna = 65 Valige juhtumi skoor Juhtum on> = 85 MsgBox "Dist" juhtum on> = 60 MsgBox "Esimene" juhtum on> = 50 MsgBox "Teine" juhtum on> = 35 MsgBox "Pass" Juhtum on muu MsgBox " Fail "Lõpeta Vali Lõpeta alam

Käivitage see kood. Hinde saame teatekasti.

Since the score is more than 60 but less than 85 grade is “First.”

Example #3

We have seen how to find a grade for one student, what about finding a grade for more than one student. Below are the scores of students.

Since more than one student is involved, we need to enclose FOR NEXT loop in VBA. Below is the VBA code.

Code:

Sub Switch_Case2() Dim k As Integer For k = 2 To 7 Select Case Cells(k, 2).Value Case Is>= 85 Cells(k, 3).Value = "Dist" Case Is>= 60 Cells(k, 3).Value = "First" Case Is>= 50 Cells(k, 3).Value = "Second" Case Is>= 35 Cells(k, 3).Value = "Pass" Case Else Cells(k, 3).Value = "Fail" End Select Next k End Sub

Run this code. We will get grades.

Things to Remember

  • Switch Case is often referred to as “Select Case.”
  • The switch is a function, not a statement.
  • Kui ükski loogiline test pole TÕENE, saate CASE ELSE lauses alternatiivse tulemuse lihtsalt edastada ja sulgeda lause alati sõnaga “END SELECT”.

Huvitavad Artiklid...