Wenn (Funktion)

Gibt einen von zwei Teilen je nach Auswertung eines Ausdrucks zurück.

Sie können die Funktion Wenn an allen Stellen verwenden, an denen Ausdrücke verwendet werden können. Mithilfe von Wenn können Sie ermitteln, ob ein anderer Ausdruck wahr oder falsch ist. Wenn der Ausdruck wahr (True) ist, gibt Wenn einen Wert zurück; ist der Ausdruck falsch (False), gibt Wenn einen anderen Wert zurück. Sie legen die Werte fest, die von Wenn zurückgegeben werden sollen.

Hier sind einige Beispiele

Syntax

Wenn ( Ausdruck ; True-Teil ; False-Teil )

Die Syntax der Wenn-Funktion weist die folgenden Argumente auf:

Argument

Beschreibung

Ausdruck

Erforderlich. Der Ausdruck, den Sie auswerten möchten.

True-Teil

Erforderlich. Der Wert oder Ausdruck, der zurückgegeben wird, wenn Ausdruck auf Wahr festgelegt ist.

False-Teil

Erforderlich. Der Wert oder Ausdruck, der zurückgegeben wird, wenn Ausdruck auf Falsch festgelegt ist.


Hinweise

Auch wenn nur ein Wert zurückgegeben wird, wertet Wenn immer True-Teil und False-Teil aus. Deshalb sollten Sie auf unerwünschte Nebeneffekte achten. Selbst wenn Ausdruck auf Wahr festgelegt ist, tritt beispielsweise ein Fehler auf, wenn die Auswertung von False-Teil zu einem "Division durch Null"-Fehler führt.

Beispiele

Verwenden von "Wenn" in einem Formular oder Bericht    Angenommen, Sie verwenden eine Kundentabelle, die ein Feld mit der Bezeichnung LandRegion enthält. In einem Formular möchten Sie anzeigen, ob Italienisch die erste Sprache des Kontakts ist. Sie können ein Steuerelement hinzufügen und Wenn in der zugehörigen Eigenschaft Steuerelementinhalt wie folgt verwenden:

=Wenn([LandRegion]="Italien"; "Italienisch"; "Eine andere Sprache")

Wenn Sie das Formular in der Formularansicht öffnen, zeigt das Steuerelement "Italienisch" an, wenn der Wert für "LandRegion" gleich "Italien" lautet, und es zeigt "Eine andere Sprache" an, wenn "LandRegion" einen anderen Wert aufweist.

Verwenden von "Wenn" in komplexen Ausdrücken    Ein Ausdruck kann als ein beliebiger Teil einer Wenn-Anweisung verwendet werden. Sie können Wenn-Ausdrücke zum Auswerten von abhängigen Ausdrücken auch schachteln. In Fortführung des vorstehenden Beispiels können Sie verschiedene Werte für LandRegion testen und dann die entsprechende Sprache abhängig vom vorhandenen Wert anzeigen:

=Wenn([LandRegion]="Italien"; "Italienisch"; Wenn([LandRegion]="Frankreich"; "Französisch"; Wenn([LandRegion]="Deutschland"; "Deutsch"; "Eine andere Sprache")))

Der Text "Eine andere Sprache" ist das Argument False-Teil der innersten Wenn-Funktion. Da es sich bei jeder geschachtelten Wenn-Funktion um das Argument False-Teil der Wenn-Funktion handelt, in der es enthalten ist, wird der Text "Eine andere Sprache" nur zurückgegeben, wenn alle Ausdruck-Argumente aller Wenn-Funktionen mit "Falsch" ausgewertet werden.

Ein weiteres Beispiel: Angenommen, Sie arbeiten in einer Bibliothek. Die Datenbank der Bibliothek enthält eine Tabelle namens "Ausleihe", die ein Feld namens "Fälligkeitsdatum" mit dem Datum enthält, an dem ein bestimmtes Buch zurückgegeben werden muss. Sie können ein Formular erstellen, das den Status eines ausgeliehenen Elements in einem Steuerelement angibt. Verwenden Sie hierzu die Funktion Wenn in der Eigenschaft Steuerelementinhalt des Steuerelements wie folgt:

=Wenn([Fälligkeitsdatum]<Datum();"ÜBERFÄLLIG";Wenn([Fälligkeitsdatum]=Datum();"Heute fällig";"Noch nicht fällig"))

Wenn Sie das Formular in der Formularansicht öffnen, zeigt das Steuerelement "ÜBERFÄLLIG" an, wenn der Wert von "Fälligkeitsdatum" kleiner als das aktuelle Datum ist, "Heute fällig", wenn es mit dem aktuellen Datum übereinstimmt, und andernfalls "Noch nicht fällig".

Hinweis : Um im Argument Ausdruck der Funktion Wenn logische Operatoren wie "Und" oder "Oder" verwenden zu können, müssen Sie den logischen Ausdruck in die Funktion Auswerten einschließen. Das wird in der nachstehenden Beispieltabelle gezeigt.

Verwenden von "Wenn" in einer Abfrage   

Die Funktion Wenn wird häufig zum Erstellen von berechneten Feldern in Abfragen verwendet. Die Syntax ist identisch – abgesehen davon, dass Sie vor dem Ausdruck einen Feldalias und einen Doppelpunkt (:) statt eines Gleichheitszeichens (=) eingeben müssen. Um das Beispiel oben verwenden zu können, geben Sie in der Zeile Feld des Abfrageentwurfsbereichs Folgendes ein:

Sprache: Wenn([LandRegion]="Italien"; "Italienisch"; "Eine andere Sprache")

In diesem Fall lautet der Feldalias "Sprache:".

Weitere Informationen zum Erstellen von Abfragen und berechneten Feldern finden Sie im Artikel Auswählen von Daten mithilfe einer Abfrage.

Verwenden von "Wenn" in VBA-Code    

Hinweis : Die folgenden Beispiele zeigen die Verwendung dieser Funktion in einem VBA-Modul (Visual Basic for Applications). Wenn Sie weitere Informationen zum Arbeiten mit VBA wünschen, wählen Sie Entwicklerreferenz in der Dropdownliste neben Suchen aus, und geben Sie einen oder mehrere Begriffe in das Suchfeld ein.

In diesem Beispiel wird die Funktion Wenn verwendet, um den TestMe-Parameter der CheckIt-Prozedur auszuwerten. Wenn der Betrag größer als 1.000 ist, wird das Wort "Groß" zurückgegeben. Andernfalls wird das Wort "Klein" zurückgegeben.

Function CheckIt (TestMe As Integer)
CheckIt = IIf(TestMe > 1000, "Large", "Small")
End Function

Weitere Beispiele

Ausdruck

Ergebnisse

=Wenn([Flughafencode]="ORD";"Chicago";Wenn([Flughafencode]="ATL";"Atlanta";Wenn([Flughafencode]="SEA";"Seattle";"Anderer")))

Wenn [Flughafencode] gleich "ORD" ist, wird "Chicago" zurückgegeben. Wenn [Flughafencode] gleich "ATL" ist, wird "Atlanta" zurückgegeben. Wenn [Flughafencode] gleich "SEA" ist, wird "Seattle" zurückgegeben. Andernfalls wird "Anderer" zurückgegeben.

=Wenn(Lieferdatum]<Datum();"Geliefert";Wenn([Lieferdatum]=Datum();"Wird heute geliefert";"Nicht geliefert"))

Wenn [Lieferdatum] vor dem heutigen Datum liegt, wird "Geliefert" zurückgegeben. Wenn [Lieferdatum] gleich dem heutigen Datum ist, wird "Wird heute geliefert" zurückgegeben. Andernfalls wird "Nicht geliefert" zurückgegeben.

=Wenn([Kaufdatum]<#1.1.2008#;"Alt";"Neu")

Wenn [Kaufdatum] vor dem 1.1.2008 liegt, wird "Alt" zurückgegeben. Andernfalls wird "Neu" zurückgegeben.

=Wenn(Auswerten([Volt] Zwischen 12 Und 15 Und [Amp] Zwischen 0,25 Und 0,3;"OK";"Nicht kalibriert")

Wenn [Volt] zwischen 12 und 15 liegt und [Amp] zwischen 0,25 und 0,3, wird "OK" zurückgegeben. Andernfalls wird "Nicht kalibriert" zurückgegeben.

=Wenn(Auswerten([LandRegion] In ("Kanada";"USA";"Mexiko"));"Nordamerika";"Andere")

Wenn [LandRegion] gleich "Kanada", "USA" oder "Mexiko" ist, wird "Nordamerika" zurückgegeben. Andernfalls wird "Andere" zurückgegeben.

=Wenn([Durchschnitt]>=90;"A";Wenn([Durchschnitt]>=80;"B";Wenn([Durchschnitt]>=70;"C";Wenn([Durchschnitt]>=60;"D";"F"))))

Wenn [Durchschnitt] gleich 90 oder größer ist, wird "A" zurückgegeben. Wenn [Durchschnitt] gleich 80 oder größer ist, wird "B" zurückgegeben. Wenn [Durchschnitt] gleich 70 oder größer ist, wird "C" zurückgegeben. Wenn [Durchschnitt] gleich 60 oder größer ist, wird "D" zurückgegeben. Andernfalls wird "F" zurückgegeben.

Hinweis : Wenn Sie mithilfe der Funktion Wenn ein berechnetes Feld in einer Abfrage erstellen, ersetzen Sie das Gleichheitszeichen (=) durch einen Feldalias und einen Doppelpunkt (:). Beispiel: Status: Wenn([Lieferdatum]<Datum();"Geliefert";Wenn([Lieferdatum]=Datum();"Wird heute geliefert";"Nicht geliefert"))

Teilen Facebook Facebook Twitter Twitter E-Mail E-Mail

War diese Information hilfreich?

Sehr gut. Noch anderes Feedback?

Was können wir verbessern?

Vielen Dank für Ihr Feedback!

×