Vergleichen Zeichenfolgen in VBA

Iqra Hasnain 18 August 2022
Vergleichen Zeichenfolgen in VBA

Wir werden vorstellen, wie man Strings mit verschiedenen Methoden in VBA vergleicht.

Vergleichen Sie Zeichenfolgen in VBA

Bei der Arbeit mit Excel-Tabellen gibt es einige Situationen, in denen wir Zeichenfolgen vergleichen müssen und Ergebnisse erhalten möchten, welche Zeichenfolge kleiner oder größer als die andere ist. VBA bietet für diesen Zweck eine perfekte Methode namens StrComp(), die zwei Strings vergleicht, um die Ergebnisse in numerischen Werten zu erhalten.

Wenn beide Strings, die wir vergleichen, gleich sind, gibt diese Methode 0 zurück. Ist der erste String kleiner als der andere String, erhalten wir als Rückgabewert die -1.

Ist der erste Eingabestring größer als der andere String, erhalten wir als Ergebnis den Wert 1. Wenn einer der Benutzereingabestrings leer ist, ist der Rückgabewert Null.

Drei Vergleichsmethoden werden von der StrComp()-Methode verwendet, aber nur zwei werden am häufigsten verwendet, und wir werden diese beiden Methoden besprechen. Wenn wir die Binärdatei zweier Strings vergleichen möchten, können wir den vbBinaryCompare verwenden, und diese Methode unterscheidet zwischen Groß- und Kleinschreibung.

Wenn wir den Text beider Strings vergleichen möchten, können wir die vbTextCompare-Methode verwenden, eine case-insensitive Methode. Lassen Sie uns ein Beispiel haben und zwei Zeichenfolgen vergleichen.

Code:

# VBA
Sub test()
Dim compare As Integer
stringOne = "Hello World"
stringTwo = "Hello World"

compare = StrComp(stringOne, stringTwo)

MsgBox compare

End Sub

Ausgabe:

Vergleichen Sie Zeichenfolgen in VBA mit der StrComp-Methode

Aus dem obigen Beispiel haben wir die gleichen Strings übergeben, die wir als Rückgabewert 0 erhalten haben. Lassen Sie uns verschiedene Werte übergeben und prüfen, welchen Rückgabewert wir erhalten.

Code:

# VBA
Sub test()
Dim compare As Integer
stringOne = "Hello World"
stringTwo = "Hello World!"

compare = StrComp(stringOne, stringTwo)

MsgBox compare

End Sub

Ausgabe:

Vergleichen Sie Zeichenfolgen in VBA mithilfe der StrComp-Methode und geben Sie unterschiedliche Werte an

Aus dem obigen Code haben wir die verschiedenen Strings mit der Länge übergeben, wir haben -1 als Rückgabewert erhalten, weil der zweite String größer als der erste war. Lassen Sie uns die String-Vergleichsmethoden in StrComp() ausprobieren und prüfen, wie sich die Ergebnisse unterscheiden, wenn wir dieselben Strings verwenden, aber unterschiedliche Groß- und Kleinschreibung und die Methode vbTextCompare verwenden.

Code:

# VBA
Sub test()
Dim compare As Integer
stringOne = "Hello World"
stringTwo = "Hello WorLd"

compare = StrComp(stringOne, stringTwo, vbTextCompare)

MsgBox compare

End Sub

Ausgabe:

Vergleichen Sie Zeichenfolgen in VBA mit der StrComp-Methode und mit vbTextCompare

Nun verwenden wir in unserem Beispiel die Methode vbBinaryCompare, indem wir ein einzelnes zusätzliches Leerzeichen hinzufügen.

Code:

# VBA
Sub test()
Dim compare As Integer
stringOne = "Hello World"
stringTwo = "Hello  World"

compare = StrComp(stringOne, stringTwo, vbBinaryCompare)

MsgBox compare

End Sub

Ausgabe:

Vergleichen Sie Zeichenfolgen in VBA mit der StrComp-Methode und mit vbBinaryCompare

Auf diese Weise können wir zwei Strings anhand ihrer Länge oder des Textes mit der Methode StrComp() mit eingebauten Methoden wie vbTextCompare und vbBinaryCompare vergleichen.

Verwandter Artikel - VBA String