WAHR und FALSCH

In einer WENN-Funktion darf nicht UND zwischen den beiden Bedingungen stehen. Also nicht so:

=WENN(A2<1000 UND B2=“München“;150;“Keine Provision“)

Das ist prinzipiell richtig, da UND kein Konjunktor wie in Programmiersprachen, sondern eine Funktion ist, also Werte entgegen nimmt und einen Wert (WAHR oder FALSCH zurück gibt. Dennoch würde folgende Lösung funktionieren:

=WENN(A2<1000*UND(B2=“München“);150;“Keine Provision“)

Dazu muss man Folgendes wissen:

Fehlt in der Funktion das Dann- oder das Sonst-Glied, so schreibt Excel WAHR oder FALSCH in die Tabelle.

Beispiel: In der Zelle B6 steht die Zahl 2000, in B7 die Zahl 300. Die Funktion

=WENN(B7>1000;“Provision“)

liefert den Text „Provision“ nur, wenn die Bedingung erfüllt ist. Sonst erscheint die Meldung FALSCH. Fehlt der Dann-Wert, so zeigt Excel als Ergebnis 0 an.

Würden beide Werte fehlen, so kommt es zu einer Fehlermeldung, was vernünftig ist, da mindestens eine der beiden Bedingungen erfüllt sein muss („dann“ oder „sonst“).

Hinweis: Sie können die beiden Wörter „wahr“ und „falsch“ selbst in eine leere Zelle eintippen – sie werden augenblicklich in Großbuchstaben verwandelt. Multipliziert man die beiden Werte mit 1, so erhält man bei WAHR das Ergebnis 1, bei FALSCH 0.

Das bedeutet, dass dem Wert WAHR die Zahl 1 entspricht , dem Wert FALSCH die Zahl 0. Man könnte WAHR und FALSCH auch als Funktionen aus der Kategorie „Logik“ herausholen – dann steht in der Zelle statt WAHR oder FALSCH die Funktion

=WAHR()

oder

=FALSCH()

Es existiert kein Unterschied zwischen der „Zahl“ WAHR und der Funktion =WAHR(). WAHR entspricht also 1, FALSCH ist 0. Unter dieser Prämisse existiert doch eine Möglichkeit, die UND-Verknüpfung zwischen zwei Kriterien einzufügen:

=WENN(A2<1000*UND(B2=“München“);150;“Keine Provision“)

Es wird der Wahrheitswert von A2<1000 mit dem Wahrheitswert von B2=“München“ multipliziert. Dabei ergibt WAHR*WAHR = WAHR, beziehungsweise:

FALSCH*WAHR = WAHR*FALSCH = FALSCH*FALSCH = FALSCH (oder: 1*1 = 1; 0*1 = 1*0 = 0*0 = 0). Man könnte also auch schreiben:

=WENN((A2<1000)*(B2=“München“);150;“Keine Provision“)

Das Multiplikationszeichen ersetzt folglich das logische UND. Das Ergebnis ist dasselbe, wird allerdings mit dem Produktzeichen unübersichtlich. Außerdem wird es dann schwierig, zwei oder mehrere Bedingungen mit ODER zu verknüpfen.

Diese Tatsache kann verwendet werden, um in mehreren, das heißt beliebig vielen Zellen nach Kriterien zu suchen, die mit UND oder mit ODER verknüpft sind.

=SUMME((A6:A15=“Anton“)*(B6:B15=“München“)*(C6:C15>5))

Gesucht werden in Spalte A alle Verkäufer mit Namen Anton, in Spalte B alle Münchner und in Spalte C das Verkaufsergebnis, das größer als 5 ist. Die Matrixfunktion muss mit [Shift] + [Strg] + [Enter] beendet werden. Vielleicht irritiert Sie in diesem Zusammenhang die Funktion SUMME. Würde man ANZAHL oder ANZAHL2 verwenden, dann würden alle Zellen gezählt werden. Der Grund: Die Matrixfunktion

{=SUMME((A6:A15=“Anton“)*(B6:B15=“München“)*(C6:C15>5))}

rechnet intern:

=SUMME((WAHR;WAHR;FALSCH;…;WAHR)*(FALSCH;WAHR;FALSCH;…WAHR)*(FALSCH;WAHR;WAHR;…WAHR))

und multipliziert zeilenweise:

=SUMME(1*0*0;1*1*1;0*0*1;…;1*1*1)

=SUMME(0;1;0;…;1)

würde man dagegen ANZAHL oder ANZAHL2 verwenden, dann würde das Ergebnis jedes Produktes gezählt werden, also jede Zeile einmal – unabhängig von ihrem Wahrheitswert.

Hinweis: Seit Excel 2007 kann dieses Problem mit Hilfe der Funktion ZÄHLENWENNS leichter gelöst werden:

=ZÄHLENWENNS(A1:A36;“Anton“;B1:B36;“München“;C1:C36;“>5″)

Neben den drei Funktionen (UND, ODER und NICHT) existiert erst seit Excel 2013 der Verknüpfungsoperator XOR, wer andere Operatoren wie EQV, LIKE und ähnliche, sucht, der wird sie hier vermissen. Man kann allerdings fehlende Funktionen aus anderen zusammensetzen. XOR (alle, die entweder aus München oder fleißig sind – jedoch nicht die fleißigen Münchner) könnte man beispielsweise bauen:

=WENN(B6=“München“;WENN(C6<=1000;“Bedingung erfüllt“;““)
;WENN(C6>1000;“Bedingung erfüllt“;““))

oder auch:

=WENN((B6=“München“)+(C6>1000)=1;“Bedingung erfüllt“;““)

Excel sieht in den Formatierungen übrigens keinen Wert vor, um Zahlen in Wahrheitswerte zu verwandeln. Wenn Sie dies benötigen, dann müssen Sie benutzerdefiniert formatieren:

„falsch“;;“wahr“

Das bedeutet: Alle Zahlen >= 0 entsprechen „falsch“, alle Werte = 0 entsprechen „wahr“.

Geben Sie in eine Excel-Zelle die „Formel“ =2<5 ein, so erhalten Sie als Ergebnis WAHR. =20<5 liefert dagegen FALSCH. Denkt man diese Gleichung oder Ungleichung weiter, dann ergibt =A1<5 entweder WAHR oder FALSCH. An einigen Stellen werden Funktionen dieser Form benötigt. Wenn Sie den Wert WAHR in einer Zelle brauchen, dann können Sie entweder die vier Buchstaben „wahr“ tippen oder die Excel-Funktion =WAHR() verwenden. Mit den Werten kann gerechnet werden, da WAHR dem Wert 1 entspricht, FALSCH dem Wert 0. WAHR*1 = 1 und FALSCH*1 = 0. Stehen in einer Spalte mehrere dieser Wahrheitswerte, so kann in einer Spalte daneben jeweils das Produkt aus dem Wahrheitswert und 1 ermittelt werden. Davon kann die Summe gezogen werden.

Achtung: Erstaunlicherweise kann man eine Spalte, in denen sich die Werte WAHR und FALSCH befinden nicht addieren. Will man jedoch Wahrheitswerte addieren, muss man die Formel

=SUMME((A18:A19)*1)

als Matrixfunktion mit [Shift] + [Strg] + [Enter] beenden.

Oder in einer Hilfsspalte jeden Wahrheitswert mit 1 multiplizieren.

Damit kann das Problem von Euler visualisiert werden: Er behauptete, dass zwei verschiedene ganze Zahlen n und m nur mit 2 und 4 folgende Gleichung lösen:

nm = mn

n^m = m^n

n^m = m^n

 

Dazu gibt man in die erste Zelle die Formel

=$A2^B$1=B$1^$A2

ein, die nach unten und nach rechts gezogen wird. Die Zellen, die WAHR liefern, werden farblich mit Hilfe der bedingten Formatierung gekennzeichnet.

Hinweis: Auch wenn Excel mit 16.384 * 1.048.577 Zellen rechnet, so können von diesen nur ein kleiner Bereich auf nm = mn überprüft werden. Die Formeln10500, 20240 oder 150150 können schon nicht mehr berechnet werden.

Da man mit Wahrheitswerten rechnen kann, kann auch folgendes Problem gelöst werden. In einer Spalte stehen Artikelnummern, in einer anderen Artikelbezeichnungen. Regelmäßig passiert es, dass entweder die Nummer oder der Artikel falsch eingegeben wird. Dies kann man in jeder Zeile durch folgende Funktion sichtbar machen:

=WENN(UND(I1=“A10″;J1=“Zubehör“);““;“falsche Eingabe“)

Möchte man umgekehrt die Anzahl der korrekten Artikel ermitteln, dann kann man den WAHR-Wert der Zelle I1 mit dem WAHR-Wert der Zelle J1 multiplizieren:

=(I1=“A10″)*(J1=“Zubehör“)

Die Funktion SUMMENPRODUKT addiert diese Zahlen in einer Zelle:

=SUMMENPRODUKT((I1:I900=“A10″)*(J1:J900=“Zubehör“))