Hoe tekenreeksen in vba te vergelijken: met voorbeelden


U kunt in VBA de volgende methoden gebruiken om tekenreeksen te vergelijken:

Methode 1: Hoofdlettergevoelige tekenreeksen vergelijken

 SubCompareStrings ()
    Dim i As Integer

    For i = 2 To 10
        Range(" C " & i) = StrComp(Range(" A " & i), Range(" B " & i)) = 0
    Next i
End Sub

Deze macro voert een hoofdlettergevoelige tekenreeksvergelijking uit tussen tekenreeksen in overeenkomende cellen in de bereiken A2:A10 en B2:B10 en retourneert WAAR of ONWAAR in het bereik C2:C10 om aan te geven of de tekenreeksen gelijk zijn of niet.

Methode 2: Hoofdletterongevoelige tekenreeksvergelijking

 SubCompareStrings ()
    Dim i As Integer

    For i = 2 To 10
        Range(" C " & i) = StrComp(Range(" A " & i), Range(" B " & i), vbTextCompare) = 0
    Next i
End Sub

Deze macro voert een niet-hoofdlettergevoelige tekenreeksvergelijking uit tussen tekenreeksen in overeenkomende cellen in de bereiken A2:A10 en B2:B10 .

De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met de volgende lijsten met tekenreeksen in Excel:

Voorbeeld 1: Hoofdlettergevoelige tekenreeksen vergelijken in VBA

We kunnen de volgende macro maken om een hoofdlettergevoelige tekenreeksvergelijking uit te voeren tussen elke overeenkomende tekenreeks in kolommen A en B:

 SubCompareStrings ()
    Dim i As Integer

    For i = 2 To 10
        Range(" C " & i) = StrComp(Range(" A " & i), Range(" B " & i)) = 0
    Next i
End Sub

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

hoofdlettergevoelige tekenreeksen vergelijken in VBA

Kolom C retourneert WAAR als de tekenreeksen gelijk zijn en dezelfde hoofdletters en kleine letters hebben.

Anders retourneert kolom C FALSE .

Voorbeeld 2: Hoofdletterongevoelige tekenreeksen vergelijken in VBA

We kunnen de volgende macro maken om een niet-hoofdlettergevoelige tekenreeksvergelijking uit te voeren tussen elke overeenkomende tekenreeks in kolommen A en B:

 SubCompareStrings ()
    Dim i As Integer

    For i = 2 To 10
        Range(" C " & i) = StrComp(Range(" A " & i), Range(" B " & i), vbTextCompare) = 0
    Next i
End Sub

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

hoofdletterongevoelige tekenreeksvergelijking in VBA

Kolom C retourneert WAAR als de tekenreeksen gelijk zijn, ongeacht de hoofdletters en kleine letters.

Kolom C retourneert alleen FALSE als de tekenreeksen niet gelijk zijn.

Opmerking : u kunt hier de volledige documentatie van de StrComp- functie in VBA vinden.

Aanvullende bronnen

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

VBA: tekens in een string vervangen
VBA: speciale tekens uit een string verwijderen
VBA: Hoe een string naar int te converteren

Einen Kommentar hinzufügen

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