VBA-switch-sag - Eksempler til brug af Excel VBA-switcherklæring

Indholdsfortegnelse

Excel VBA-switchetui

Switch Case eller Select Case er en erklæring, der er tilgængelig i VBA til at udføre logiske tests, hvor den fungerer som et alternativ til IF-THEN-erklæring i VBA. Ved hjælp af en switch case kan vi udføre flere logiske tests og nå resultater baseret på flere resultater.

Nedenfor er syntaksen for Switch Case / Select Case-erklæringen.

Kode:

Vælg sag sag 1 værdi, hvis sag 1 test er SAND sag 2 værdi, hvis sag 2 test er sand sag 3 værdi, hvis sag 3 test er SAND sag, anden værdi, hvis ingen af ​​ovenstående tilfælde er sand

: Hvad er den logiske test? Vi er nødt til at gå ind i testen her.

Case 1, Case 2: I begge tilfælde er vi nødt til at teste flere logiske tests i Excel.

Hvordan bruges VBA Switch Case Statement?

Eksempel nr. 1

I celle A1 har jeg indtastet værdien som 550.

Vi tester dette nummer ved hjælp af switch case-erklæringer og når status som "Mere end 500", hvis værdien er mere end 500, ellers kommer vi til status som "Mindre end 500".

Åbn VBA Sub-proceduren først.

Kode:

Sub Switch_Case () Afslut Sub

Åbn Select Case Statement i VBA, og angiv den logiske test Range (“A2”) værdi

Kode:

Sub Switch_Case () Vælg Case Range ("A2"). Værdi End Sub

Indtast nu den første sag, da sag er> 500.

Kode:

Sub Switch_Case () Vælg Case Range ("A2"). Value Case Is> 500 End Sub

Hvis denne sag er SAND, hvad er det resultat, vi har brug for i celle B, 2, dvs. “Mere end 500”.

Kode:

Sub Switch_Case () Vælg Case Range ("A2"). Value Case er> 500 Range ("B2"). Værdi = "Mere end 500" End Sub

Nu har vi kun ét resultat, dvs. Case Else-erklæring. Hvis den første sag er FALSK, har vi brug for resultatet som "Mindre end 500".

Kode:

Sub Switch_Case () Vælg saginterval ("A2"). Værdi Sag er> 500 rækkevidde ("B2"). Værdi = "Mere end 500" Sag andet rækkevidde ("B2"). Værdi = "Mindre end 500" Afslut sub

Luk nu erklæringen ved hjælp af "End Select" -erklæringen.

Kode:

Sub Switch_Case () Vælg saginterval ("A2"). Værdi Sag er> 500 rækkevidde ("B2"). Værdi = "Mere end 500" Sag andet rækkevidde ("B2"). Værdi = "Mindre end 500" Slutvalg Afslut sub

Kør koden, vi får værdien i celle B2.

Da værdien i celle A2 er større end 500, fik vi resultatet som "Mere end 500".

Eksempel 2

Nu ser vi brugen af ​​flere eksempler på sager. Nedenfor er den studerendes score i eksamen.

Med denne score er vi nødt til at nå frem til lønklasse, for nedenstående er kriterierne.

  • Score> = 85, Grade = “Dist”
  • Score> = 60, Karakter = “Først”
  • Score> = 50, Grade = “Second”
  • Score> = 35, karakter = “Bestået”
  • Hvis noget andet, er karakter = "mislykkes."

Kode:

Sub Switch_Case1 ()

 Dim score som heltalscore = 65 Vælg sag til case-sag er> = 85 MsgBox "Dist" sag er> = 60 MsgBox "Første" sag er> = 50 MsgBox "Anden" sag er> = 35 MsgBox "Pass" sag andet MsgBox " Mislykkes "Afslut Vælg afslut sub

Kør denne kode. Vi får karakteren i meddelelsesfeltet.

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.
  • Hvis ingen logiske tests er SAND, kan du blot videregive det alternative resultat i CASE ELSE-sætningen og altid lukke udsagnet med ordet “END SELECT”.

Interessante artikler...