VergleichsoperatorenComparison operators

Wird verwendet, um Ausdrücke zu vergleichen.Used to compare expressions.

SyntaxSyntax

Ergebnis = expression1 ComparisonOperator expression2result = expression1 comparisonoperator expression2
Ergebnis = object1 ist objekt2result = object1 Is object2
Ergebnis = Zeichenfolge wie Musterresult = string Like pattern

Vergleichsoperatoren weisen folgende Teile auf:Comparison operators have these parts:

TeilPart BeschreibungDescription
resultresult Erforderlich; eine beliebige numerische Variable.Required; any numeric variable.
expressionexpression Erforderlich. Ein beliebiger Ausdruck.Required; any expression.
ComparisonOperatorcomparisonoperator Erforderlich. Ein Vergleichsoperator.Required; any comparison operator.
objectobject Erforderlich. Ein Objektname.Required; any object name.
Zeichenfolgestring Erforderlich. Ein Zeichenfolgenausdruck.Required; any string expression.
patternpattern Erforderlich. Ein Zeichenfolgenausdruck oder ein Zeichenbereich.Required; any string expression or range of characters.

HinweiseRemarks

Die folgende Tabelle enthält eine Liste der Vergleichsoperatoren und der Bedingungen, die bestimmen, ob Result auf true, falseoder nullfestgelegt ist.The following table contains a list of the comparison operators and the conditions that determine whether result is True, False, or Null.

OperatorOperator True wennTrue if False wennFalse if Null wennNull if
<(Kleiner als)< (Less than) expression1 < expression2expression1 < expression2 expression1 >= expression2expression1 >= expression2 expression1 oder expression2 = nullexpression1 or expression2 = Null
<=(Kleiner als oder gleich)<= (Less than or equal to) expression1 <= expression2expression1 <= expression2 expression1 > expression2expression1 > expression2 expression1 oder expression2 = nullexpression1 or expression2 = Null
>(Größer als)> (Greater than) expression1 > expression2expression1 > expression2 expression1 <= expression2expression1 <= expression2 expression1 oder expression2 = nullexpression1 or expression2 = Null
>=(Größer als oder gleich)>= (Greater than or equal to) expression1 >= expression2expression1 >= expression2 expression1 < expression2expression1 < expression2 expression1 oder expression2 = nullexpression1 or expression2 = Null
=(Gleich)= (Equal to) expression1 = expression2expression1 = expression2 expression1 <> expression2expression1 <> expression2 expression1 oder expression2 = nullexpression1 or expression2 = Null
<>(Ungleich)<> (Not equal to) expression1 <> expression2expression1 <> expression2 expression1 = expression2expression1 = expression2 expression1 oder expression2 = nullexpression1 or expression2 = Null

Hinweis

[!HINWEIS] Die Operatoren Is und Like haben eine bestimmte Vergleichsfunktion, die sich von den Operatoren in der Tabelle unterscheidet.The Is and Like operators have specific comparison functionality that differs from the operators in the table.

Wenn Sie zwei Ausdrücke vergleichen, können Sie möglicherweise nicht ganz einfach ermitteln, ob die Ausdrücke als Zahlen oder als Zeichenfolgen verglichen werden.When comparing two expressions, you may not be able to easily determine whether the expressions are being compared as numbers or as strings. In der folgenden Tabelle wird gezeigt, wie die Ausdrücke verglichen werden oder das Ergebnis, wenn es sich bei keinem Ausdruck um eine Variantehandelt.The following table shows how the expressions are compared or the result when either expression is not a Variant.

WennIf ThenThen
Beide Ausdrücke sind numerische Datentypen (Byte, Boolean, Integer, Long, Single, Double, Date, Currency oder Decimal).Both expressions are numeric data types (Byte, Boolean, Integer, Long, Single, Double, Date, Currency, or Decimal) Ein numerischer Vergleich wird durchgeführt.Perform a numeric comparison.
Beide Ausdrücke sind Zeichenfolgen.Both expressions are String Ein Zeichenfolgenvergleich wird durchgeführt.Perform a string comparison.
Ein Ausdruck ist ein numerischer Datentyp und der andere eine Variante, z. B. eine Zahl.One expression is a numeric data type and the other is a Variant that is, or can be, a number Ein numerischer Vergleich wird durchgeführt.Perform a numeric comparison.
Ein Ausdruck ist ein numerischer Datentyp und der andere eine Zeichenfolgenvariante, die nicht in eine Zahl konvertiert werden kann.One expression is a numeric data type and the other is a string Variant that can't be converted to a number Es Type Mismatch tritt ein Fehler auf.A Type Mismatch error occurs.
Ein Ausdruck ist eine Zeichenfolge und der andere eine Variante, aber kein Null-WertOne expression is a String and the other is any Variant except a Null Ein Zeichenfolgenvergleich wird durchgeführt.Perform a string comparison.
Ein Ausdruck ist leer und der andere ein numerischer Datentyp.One expression is Empty and the other is a numeric data type Ein numerischer Vergleich mit 0 als der leere Ausdruck wird durchgeführt.Perform a numeric comparison, using 0 as the Empty expression.
Ein Ausdruck ist leer und der andere eine Zeichenfolge.One expression is Empty and the other is a String Ein Zeichenfolgenvergleich mit einer Zeichenfolge der Länge null ("") als der leere Ausdruck wird durchgeführt.Perform a string comparison, using a zero-length string ("") as the Empty expression.

Wenn expression1 und expression2 beides Variant-Ausdrücke sind, wird anhand des zugrunde liegenden Typs ermittelt, wie diese verglichen werden.If expression1 and expression2 are both Variant expressions, their underlying type determines how they are compared. In der folgenden Tabelle wird gezeigt, wie die Ausdrücke verglichen werden oder das Ergebnis des Vergleichs, abhängig vom zugrunde liegenden Typ der Variante.The following table shows how the expressions are compared or the result from the comparison, depending on the underlying type of the Variant.

WennIf ThenThen
Beide Variant-Ausdrücke sind numerisch.Both Variant expressions are numeric Ein numerischer Vergleich wird durchgeführt.Perform a numeric comparison.
Beide Variant-Ausdrücke sind Zeichenfolgen.Both Variant expressions are strings Ein Zeichenfolgenvergleich wird durchgeführt.Perform a string comparison.
Ein Variant-Ausdruck ist numerisch und der andere eine Zeichenfolge.One Variant expression is numeric and the other is a string Der numerische Ausdruck ist kleiner als der Zeichenfolgenausdruck.The numeric expression is less than the string expression.
Ein Variant-Ausdruck ist leer und der andere numerisch.One Variant expression is Empty and the other is numeric Ein numerischer Vergleich mit 0 als der leere Ausdruck wird durchgeführt.Perform a numeric comparison, using 0 as the Empty expression.
Ein Variant-Ausdruck ist leer und der andere eine Zeichenfolge.One Variant expression is Empty and the other is a string Ein Zeichenfolgenvergleich mit einer Zeichenfolge der Länge null ("") als der leere Ausdruck wird durchgeführt.Perform a string comparison, using a zero-length string ("") as the Empty expression.
Beide Variant-Ausdrücke sind leer.Both Variant expressions are Empty Die Ausdrücke sind gleich.The expressions are equal.

Wenn ein Single-Element mit einem Double-Element verglichen wird, wird das Double-Element auf die Genauigkeit eines Single-Elements gerundet.When a Single is compared to a Double, the Double is rounded to the precision of the Single. Wenn eine Währung mit einem einzelnen oder einem Double-Wert verglichen wird, wird das einzelne oder doppelte in eine Währungkonvertiert.If a Currency is compared with a Single or Double, the Single or Double is converted to a Currency.

Wenn ein Decimal mit einem einzelnen oder einem Double-Wert verglichen wird, wird auch das einzelne oder Double in ein Decimal-Wert konvertiert.Similarly, when a Decimal is compared with a Single or Double, the Single or Double is converted to a Decimal. Bei einer Währungkönnen alle Dezimalzahlen, die kleiner als. 0001 sind, verloren gehen. bei Decimalkann jeder Bruchwert kleiner als 1E-28 möglicherweise verloren gehen, oder es kann ein Überlauffehler auftreten.For Currency, any fractional value less than .0001 may be lost; for Decimal, any fractional value less than 1E-28 may be lost, or an overflow error can occur. Ein solcher Verlust kann dazu führen, dass zwei Werte als gleichwertig verglichen werden, wenn dies nicht der Fall ist.Such fractional value loss may cause two values to compare as equal when they are not.

BeispielExample

In diesem Beispiel werden verschiedene Anwendungsgebiete von Vergleichsoperatoren veranschaulicht, die zum Vergleich von Ausdrücken verwendet werden können.This example shows various uses of comparison operators, which you use to compare expressions.

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 auchSee also

Support und FeedbackSupport and feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation?Have questions or feedback about Office VBA or this documentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.