Ungewöhnliche IF-Syntax in Excel

Ungewöhnliche IF-Syntax in Excel

Ein Kollege hat von einem Lieferanten eine Kalkulationstabelle mit der folgenden Formel erhalten.

=E10-F10*(H10="Y")-G10*(I10="Y")

Der Lieferant erklärt dieses Feld wie folgt:

Wenn H10 und I10 beide gleich N sind, dann ist J10 gleich E10

Ich bin wirklich neugierig. Ich bin dieser Syntax noch nie begegnet IFund kann auch keine Dokumentation dazu finden. Kann mir jemand erklären, wie es funktioniert?

Beispielzeilen

E       F       G   H   I   J
100,000 2,000   40  N   N   100,000
100,000 2,000   40  Y   Y   97,960
100,000 2,000   40  Y   N   98,000
100,000 2,000   40  N   Y   99,960

Hat jemand eine Idee?

Antwort1

(H10="Y")Im Wesentlichen werden die mit und gekennzeichneten Teile der Formel (I10="Y") entweder zuWAHRoderFALSCH. Übertragen auf die Tabelle bedeutet dies TRUE = 1und FALSE = 0. Mathematisch multipliziert er in der Gleichung entweder mit 0 oder mit 1.

Also Zeile 1

E       F       G   H   I   J
100,000 2,000   40  N   N   100,000

=E10-F10*(H10="N")-G10*(I10="N") übersetzt E10-F10*0-G10*0 bedeutet

E10-0-0
100,000-0-0
100,000

Zeile 2

E       F       G   H   I   J
100,000 2,000   40  Y   Y   97,960

=E11-F11*(H10="Y")-G11*(I11="Y") übersetzt =E11-F11*1-G11*1 bedeutet

100,000-2,000-40
97,960

Kurz gesagt besagt die Logik, dass wenn H="Y" mit 1 multipliziert wird (oder dieser Teil eingeschlossen wird). Kurz gesagt besagt die Logik, dass wenn H="N" mit 0 multipliziert wird (das Ergebnis auf Null gesetzt wird).

Das Gleiche gilt für I

Hoffe das hilft.

Antwort2

Die Formel entspricht genau:

=E10-IF(H10="Y",F10,0)-IF(I10="Y",G10,0)

weil Faktoren wie:

(H10="Y")

wird ausgewertet als entweder1oder0

verwandte Informationen