Een case-statement schrijven in vba (met voorbeeld)


Een case-instructie is een type instructie dat door de voorwaarden loopt en een waarde retourneert wanneer aan de eerste voorwaarde is voldaan.

U kunt de volgende basissyntaxis gebruiken om een case-instructie in VBA te schrijven:

 SubCaseStatement ()

    Dim i As Integer

    For i = 2 To 9
    
       Select Case Range(" B " & i).Value
            Case Is >= 30
                result=" Great "
           Box Is >= 20
                result = " Good "
            Case Is >= 15
                result=" OK "
           Case Else
                result=" Bad "
        End Select
        
        Range(" C " & i).Value = result
        
    Next i
    
End Sub

In dit specifieke voorbeeld wordt naar elke cel in het bereik B2:B9 gekeken en worden de volgende waarden in het bereik C2:C9 geretourneerd:

  • Uitstekend ” als de waarde in kolom B groter is dan of gelijk is aan 30.
  • Anders “ Goed ” als de waarde in kolom B groter is dan of gelijk is aan 20.
  • Anders “ OK ” als de waarde in kolom B groter is dan of gelijk is aan 15.
  • Anders “ slecht ” als aan geen van de voorgaande voorwaarden is voldaan.

Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.

Voorbeeld: een Case Statement schrijven in VBA

Laten we zeggen dat we de volgende gegevensset in Excel hebben die het aantal punten weergeeft dat door verschillende basketbalspelers is gescoord:

Stel dat we een casusverklaring willen schrijven om aan elke speler de waarde Uitstekend, Goed, OK of Slecht toe te kennen op basis van het aantal gescoorde punten.

We kunnen hiervoor de volgende macro maken:

 SubCaseStatement ()

    Dim i As Integer

    For i = 2 To 9
    
       Select Case Range(" B " & i).Value
            Case Is >= 30
                result=" Great "
           Box Is >= 20
                result = " Good "
            Case Is >= 15
                result=" OK "
           Case Else
                result=" Bad "
        End Select
        
        Range(" C " & i).Value = result
        
    Next i
    
End Sub

Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:

Kolom C retourneert een waarde Uitstekend, Goed, OK of Slecht op basis van de overeenkomstige waarde in kolom B.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in VBA kunt uitvoeren:

VBA: een lijst met waarden classificeren
VBA: unieke waarden binnen bereik tellen
VBA: het aantal rijen binnen bereik tellen

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert