Freigeben über


Vergleichsoperatoren

Wird verwendet, um Ausdrücke zu vergleichen.

Syntax

Ergebnis = Expression1comparisonOperatorexpression2result = object1Isobject2result = stringLikepattern

Vergleichsoperatoren weisen folgende Teile auf:

Bestandteil Beschreibung
result Erforderlich; eine beliebige numerische Variable.
expression Erforderlich. Ein beliebiger Ausdruck.
vergleichoperator Erforderlich. Ein Vergleichsoperator.
Objekt Erforderlich. Ein Objektname.
Zeichenfolge Erforderlich. Ein Zeichenfolgenausdruck.
pattern Erforderlich. Ein Zeichenfolgenausdruck oder ein Zeichenbereich.

Hinweise

Die folgende Tabelle enthält eine Liste der Vergleichsoperatoren und der Bedingungen, die bestimmen, ob das ErgebnisTrue, False oder Null ist.

Operator True wenn False wenn Null wenn
< (Kleiner als) Ausdruck1<Ausdruck2 Ausdruck1>= Ausdruck2 expression1 oder expression2 = Null
<= (Kleiner oder gleich) Ausdruck1<= Ausdruck2 Ausdruck1>Ausdruck2 expression1 oder expression2 = Null
> (Größer als) Ausdruck1>Ausdruck2 Ausdruck1<= Ausdruck2 expression1 oder expression2 = Null
>= (Größer als oder gleich) Ausdruck1>= Ausdruck2 Ausdruck1<Ausdruck2 expression1 oder expression2 = Null
= (Gleich) Ausdruck1 = Ausdruck2 Ausdruck1<>Ausdruck2 expression1 oder expression2 = Null
<> (Ungleich) Ausdruck1<>Ausdruck2 Ausdruck1 = Ausdruck2 expression1 oder expression2 = Null

Hinweis

[!HINWEIS] Die Operatoren Is und Like haben eine bestimmte Vergleichsfunktion, die sich von den Operatoren in der Tabelle unterscheidet.

Wenn Sie zwei Ausdrücke vergleichen, können Sie möglicherweise nicht einfach feststellen, ob die Ausdrücke als Zahlen oder als Zeichenfolgen verglichen werden. Die folgende Tabelle zeigt, wie die Ausdrücke verglichen werden, oder das Ergebnis, wenn es sich bei beiden Ausdrücken nicht um einen Variant-Ausdruck handelt.

Wenn: Then
Beide Ausdrücke sind numerische Datentypen (Byte, Boolean, Integer, Long, Single, Double, Date, Currency oder Decimal). Ein numerischer Vergleich wird durchgeführt.
Beide Ausdrücke sind Zeichenfolgen. Ein Zeichenfolgenvergleich wird durchgeführt.
Ein Ausdruck ist ein numerischer Datentyp und der andere eine Variante, z. B. eine Zahl. Ein numerischer Vergleich wird durchgeführt.
Ein Ausdruck ist ein numerischer Datentyp und der andere eine Zeichenfolgenvariante, die nicht in eine Zahl konvertiert werden kann. Ein Type Mismatch Fehler tritt auf.
Ein Ausdruck ist eine Zeichenfolge und der andere eine Variante, aber kein Null-Wert Ein Zeichenfolgenvergleich wird durchgeführt.
Ein Ausdruck ist leer und der andere ein numerischer Datentyp. Ein numerischer Vergleich mit 0 als der leere Ausdruck wird durchgeführt.
Ein Ausdruck ist leer und der andere eine Zeichenfolge. Ein Zeichenfolgenvergleich mit einer Zeichenfolge der Länge null ("") als der leere Ausdruck wird durchgeführt.

Wenn expression1 und expression2 beides Variant-Ausdrücke sind, wird anhand des zugrunde liegenden Typs ermittelt, wie diese verglichen werden. Die folgende Tabelle zeigt, wie die Ausdrücke oder das Ergebnis des Vergleichs verglichen werden, je nach zugrunde liegendem Variant-Typ.

Wenn: Then
Beide Variant-Ausdrücke sind numerisch. Ein numerischer Vergleich wird durchgeführt.
Beide Variant-Ausdrücke sind Zeichenfolgen. Ein Zeichenfolgenvergleich wird durchgeführt.
Ein Variant-Ausdruck ist numerisch und der andere eine Zeichenfolge. Der numerische Ausdruck ist kleiner als der Zeichenfolgenausdruck.
Ein Variant-Ausdruck ist leer und der andere numerisch. Ein numerischer Vergleich mit 0 als der leere Ausdruck wird durchgeführt.
Ein Variant-Ausdruck ist leer und der andere eine Zeichenfolge. Ein Zeichenfolgenvergleich mit einer Zeichenfolge der Länge null ("") als der leere Ausdruck wird durchgeführt.
Beide Variant-Ausdrücke sind leer. Die Ausdrücke sind gleich.

Wenn ein Single-Element mit einem Double-Element verglichen wird, wird das Double-Element auf die Genauigkeit eines Single-Elements gerundet. Wenn eine Währung mit einem Single oder Double verglichen wird, wird der Single oder Double in eine Währung konvertiert.

Wenn ein Dezimaltrennzeichen mit einem Single oder Double verglichen wird, wird der Single - oder Double-Wert in eine Dezimalzahl konvertiert. Bei Currency kann jeder Bruchwert unter 0,0001 verloren gegangen sein. bei Dezimalstellen kann jeder Bruchwert kleiner als 1E-28 verlorengehen, oder es kann ein Überlauffehler auftreten. Ein solcher Bruchwertverlust kann dazu führen, dass zwei Werte als gleich verglichen werden, wenn sie nicht sind.

Beispiel

In diesem Beispiel werden verschiedene Anwendungsgebiete von Vergleichsoperatoren veranschaulicht, die zum Vergleich von Ausdrücken verwendet werden können.

Dim MyResult, Var1, Var2
MyResult = (45 < 35)    ' Returns False.
MyResult = (45 = 45)    ' Returns True.
MyResult = (4 <> 3)    ' Returns True.
MyResult = ("5" > "4")    ' Returns True.

Var1 = "5": Var2 = 4    ' Initialize variables.
MyResult = (Var1 > Var2)    ' Returns True.

Var1 = 5: Var2 = Empty
MyResult = (Var1 > Var2)    ' Returns True.

Var1 = 0: Var2 = Empty
MyResult = (Var1 = Var2)    ' Returns True.

Siehe auch

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.