VBA kućište prekidača - Primjeri korištenja Excel VBA Izjave o prebacivanju

Excel VBA kućište prekidača

Switch Case ili Select Case izjava je dostupna u VBA-u za provođenje logičkih testova tamo gdje djeluje kao alternativa izjavi IF-THEN u VBA-u. Korištenjem kućišta prekidača možemo provesti više logičkih testova i dolaziti do rezultata na temelju više rezultata.

Ispod je sintaksa izjave Switch Case / Select Case.

Kodirati:

Odaberite slučaj slučaja 1 vrijednost ako je slučaj 1 test vrijednost TRUE slučaj vrijednost 2 slučaj slučaj 2 test vrijednost TRUE slučaj vrijednost 3 slučaj ako je test slučaj TRUE vrijednost slučaja Druga vrijednost ako nijedan od gore navedenih slučajeva nije vrijednost TRUE End Select

: Koji je logični test? Ovdje moramo ući u test.

Slučaj 1, slučaj 2: U svakom slučaju moramo testirati više logičkih testova u Excelu.

Kako se koristi Izjava o slučaju prebacivanja VBA?

Primjer # 1

U ćeliju A1 unijeo sam vrijednost kao 550.

Testirat ćemo ovaj broj pomoću naredbi prekidača i doći ćemo do statusa "Više od 500" ako je vrijednost veća od 500 ili ćemo doći do statusa "Manje od 500".

Prvo otvorite postupak VBA Sub.

Kodirati:

Sub Switch_Case () Kraj Sub

Otvorite Izbor slučaja u VBA i navedite logički opseg ispitivanja ("A2"). Vrijednost

Kodirati:

Sub Switch_Case () Odaberite opseg slučajeva ("A2"). Vrijednost Kraj Sub

Sada unesite prvi slučaj jer je Case> 500.

Kodirati:

Sub Switch_Case () Odaberite raspon slučaja ("A2"). Vrijednost slučaja je> 500 Kraj Sub

Ako je ovaj slučaj ISTINIT, kakav je rezultat potreban u ćeliji B, 2, tj. "Više od 500".

Kodirati:

Sub Switch_Case () Odaberite opseg slučaja ("A2"). Vrijednost slučaja je> 500 raspona ("B2"). Value = "Više od 500" Kraj Sub

Sada nam ostaje samo jedan rezultat, tj. Izjava Case Else. Ako je prvi slučaj FALSE, tada nam je potreban rezultat "Manje od 500".

Kodirati:

Sub Switch_Case () Odaberite opseg slučaja ("A2"). Vrijednost slučaja je> 500 raspona ("B2"). Value = "Više od 500" Drugo područje raspona ("B2"). Value = "Manje od 500" Kraj Sub

Sada zatvorite izjavu pomoću naredbe "End Select".

Kodirati:

Sub Switch_Case () Odaberite raspon slučaja ("A2"). Vrijednost slučaja je> 500 raspona ("B2"). Value = "Više od 500" Drugo raspon slučaja ("B2"). Value = "Manje od 500" Kraj odabira Kraj pod

Pokrenite kôd dobit ćemo vrijednost u ćeliji B2.

Budući da je vrijednost u ćeliji A2 veća od 500, dobili smo rezultat kao "Više od 500".

Primjer # 2

Sada ćemo vidjeti više primjera slučaja. Ispod je ocjena studenta na ispitu.

S ovom ocjenom moramo doći do ocjene, jer su to dolje kriteriji.

  • Ocjena> = 85, ocjena = "Dist"
  • Ocjena> = 60, ocjena = "Prva"
  • Ocjena> = 50, ocjena = "Drugo"
  • Ocjena> = 35, ocjena = "Prolaz"
  • Ako bilo što drugo, ocjena = "Neuspjeh."

Kodirati:

Sub Switch_Case1 ()

 Zatamni ocjenu kao cjelobrojnu ocjenu = 65 Odaberi ocjenu slučaja Slučaj je> = 85 MsgBox "Dist" Case Is> = 60 MsgBox "First" Case Is = = 50 MsgBox "Second" Case Is = = 35 MsgBox "Pass" Case Else MsgBox " Fail "End Select End Sub

Pokrenite ovaj kod. Ocjenu ćemo dobiti u okviru s porukom.

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.
  • Ako nijedan logički test nije ISTINA, tada možete jednostavno proslijediti alternativni rezultat u CASE ELSE izrazu i uvijek zatvoriti izraz riječima “END SELECT”.

Zanimljivi članci...