Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

WENN in Arrayformel

Forumthread: WENN in Arrayformel

WENN in Arrayformel
28.09.2005 08:24:14
Erich
Hallo zusammen,
im Zusammenhang mit dem Thread https://www.herber.de/forum/archiv/672to676/t672845.htm habe ich mich gewundert darüber, dass WENN in einer Arrayformel leere Zellen einer Matrix in Nullen umsetzt - glaube ich wenigstens. Kann mir jemand das erklären? In der folgenden Tabelle hab ich in C4 und D4 hingeschrieben, was WENN zurückgibt, worüber also der Durchschnitt gebildet wird:
 
 ABCD
1DatenAuswahlfalschrichtig
29 3,66666666711
3 x  
411x{FALSCH;0;11;0}{FALSCH;FALSCH;11;FALSCH}
5 x  
Formeln der Tabelle
C2 : {=MITTELWERT(WENN(B2:B5="x";A2:A5))}
D2 : {=MITTELWERT(WENN((B2:B5="x")*ISTZAHL(A2:A5);A2:A5))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
Grüße von Erich aus Kamp-Lintfort
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: WENN in Arrayformel
28.09.2005 08:34:53
frank
hallo erich,
das problem ist mir gestern und heute auch schon 2x vorgekommen man muss die leeren direkt ausschliessen sonst gehts irgentwie nicht richtig mit istzahl hat ich auch schon probleme - ne andere möglichkeit:
{=MITTELWERT(WENN((b2:b5="x");WENN(a2:a5&lt&gt"";a2:a5)))}
gruß frank
Anzeige
AW: WENN in Arrayformel
28.09.2005 09:32:03
Erich
Hallo Frank,
danke, jetzt sind wir schon zu dritt mit einem Problem und einem Würgaround.
Aber kann uns das einer erklären? Das wäre toll! Ich stell noch mal auf h"offen".
Grüße von Erich aus Kamp-Lintfort
"" und 0 im {mittelwert()}
28.09.2005 09:46:30
heikoS
Hallo zusammen,
schreibt doch ´mal ...&lt&gt0... statt ...&lt&gt"" ...
Nehmen wir an, a1 ist leer - wenn Ihr jetzt =a1=0 (bzw. --(a1=0)) eingebt, werdet Ihr WAHR (bzw. 1) erhalten. Soll heißen leere Zellen haben den Wert Null. Daher ist es korrekt, wenn sie bei {mittelwert()} mit berechnet werden.
Klar geworden?
Gruß Heiko
Anzeige
AW: WENN in Arrayformel
28.09.2005 10:12:22
HermannZ
Hallo Frank;
vieleicht hilft das zum verstehn der Arbeitweise der Formel;
Mittelwert
 ABC
315   
3169 3,666666667
317 x11
31811x 
319 x 
Formeln der Tabelle
C316 : {=MITTELWERT(WENN(B316:B319="x";A316:A319))}
C317 : {=MITTELWERT(WENN((B316:B319="x")*(A316:A319<>"");A316:A319))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
es entsteht folgende Matrix aus der Wenn abfrage ( FALSCH;WAHR;WAHR;WAHR)
die verarbeiteten Werte in der Wenn abfrage (9;0;11;0)
somit wird an die MITTELWERT Funktion (FALSCH;0;11;0) übergeben
was natürlich drei Werte sind
bei der zweiten variante ensteht aus der Wenn (FALSCH;FALSCH;11;FALSCH)
die verarbeiteten Werte in der Wenn abfrage (9;0;11;0)
an die MITTELWERT Funktion übergeben wird (FALSCH;FALSCH;11;FALSCH)
entspricht aber nur einem Wert
ich glaube hieraus kannst du ersehen wie das zustande kommt.
Gruß Hermann
Anzeige
AW: WENN in Arrayformel
28.09.2005 10:20:11
frank
hallo,
wenn man das ganze mal so betrachtet macht es sinn mir war nicht klar gewesen das excel bei der matrix leere zellen als null sieht...
wieder was gelernt :)
gruß frank
AW: WENN in Arrayformel
28.09.2005 10:27:41
HermannZ
Hallo Frank;
das ist nicht ganz richtig, einzig und allein ist die WENN Funktion für die 0 Werte verantwortlich, denn die Matrix wird ja erst aus der Übergabe der Wennabfrage gebildet.
Wenn also die Wennabfrage eine 0 an die Matrix übergibt wird sie dort auch verarbeitet.
Gruß hermann
Anzeige
AW: WENN in Arrayformel
28.09.2005 11:08:48
Erich
Hallo zusammen,
Herrmann, danke, das wars:
 
 ABC
1Wenn-ErgArgumentB enthält
211eine 1
3xxein x
4 ein Leerzeichen
5  leere Zeichenkette
60 nichts
Formeln der Tabelle
A2 : =WENN(WAHR;B2)
A3 : =WENN(WAHR;B3)
A4 : =WENN(WAHR;B4)
A5 : =WENN(WAHR;B5)
B5 : =""
A6 : =WENN(WAHR;B6)
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
In den Zeilen 2 bis 5 gibt WENN exakt den Wert aus Spalte B zurück, in Zeile 6 macht WENN aus NICHTS eine Null.
Grüße von Erich aus Kamp-Lintfort
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

WENN in Arrayformel: So geht's!


Schritt-für-Schritt-Anleitung

  1. Formel eingeben: Beginne mit der Eingabe deiner Formel. Eine typische Formel könnte so aussehen:

    {=MITTELWERT(WENN(B2:B5="x";A2:A5))}

    Beachte, dass du die Formel mit STRG + SHIFT + RETURN abschließen musst, um sie als Arrayformel zu aktivieren.

  2. Leere Zellen berücksichtigen: Um leere Zellen zu ignorieren, kannst du die folgende Formel verwenden:

    {=MITTELWERT(WENN((B2:B5="x");WENN(A2:A5<>"";A2:A5)))}

    Diese Formel schließt leere Zellen aus und gibt nur die relevanten Werte zurück.

  3. Matrixformel anpassen: Stelle sicher, dass du die korrekten Bereiche für deine Daten einstellst. Eine fehlerhafte Auswahl kann zu unerwarteten Ergebnissen führen.

  4. Ergebnisse überprüfen: Teste deine Formeln, um sicherzustellen, dass sie die erwarteten Werte zurückgeben. Achte auf die Ausgabe in den Zellen.


Häufige Fehler und Lösungen

  • Leer als Null: Excel interpretiert leere Zellen als Nullen. Verwende die Funktion ISTZAHL, um sicherzustellen, dass nur Zahlen in die Berechnung einfließen. Eine mögliche Formel könnte so aussehen:

    =MITTELWERT(WENN((B2:B5="x")*(ISTZAHL(A2:A5));A2:A5))
  • Formel nicht als Arrayformel eingegeben: Wenn deine Formel nicht die erwarteten Ergebnisse liefert, stelle sicher, dass du sie mit STRG + SHIFT + RETURN abgeschlossen hast.

  • Falsche Bereichsangaben: Überprüfe, ob die angegebenen Zellen die richtigen Werte enthalten. Falsche Bereichsangaben führen oft zu Fehlern.


Alternative Methoden

  • Einfache WENN-Funktion: Anstelle einer komplexen Arrayformel kannst du auch eine einfache WENN-Funktion nutzen. Zum Beispiel:

    =WENN(B2="x";A2;"")

    Diese Formel gibt nur den Wert aus Spalte A zurück, wenn in Spalte B "x" steht.

  • Verwendung von AGGREGAT: Die AGGREGAT-Funktion kann auch nützlich sein, um leere Zellen zu ignorieren, ohne eine Arrayformel zu verwenden. Zum Beispiel:

    =AGGREGAT(1;6;A2:A5/(B2:B5="x");1)

Praktische Beispiele

Angenommen, du hast folgende Daten:

A B
9 x
x
11
x

Mit der Formel {=MITTELWERT(WENN(B1:B4="x";A1:A4))} erhältst du den Mittelwert der Werte in Spalte A, die mit "x" in Spalte B übereinstimmen. Die leeren Zellen werden ignoriert.

Ein weiteres Beispiel könnte die Anwendung der ISTZAHL-Funktion sein:

{=MITTELWERT(WENN((B2:B5="x")*(ISTZAHL(A2:A5));A2:A5))}

Hierbei wird sichergestellt, dass nur numerische Werte in die Berechnung einfließen.


Tipps für Profis

  • Arrayformel optimieren: Wenn du häufig mit Arrayformeln arbeitest, überlege, wie du deine Formeln effizienter gestalten kannst, um die Rechenleistung zu verbessern.

  • Fehlerprüfung: Nutze die Fehlerüberprüfungsfunktionen von Excel, um mögliche Probleme in deinen Formeln schnell zu identifizieren.

  • Komplexe Bedingungen: Bei komplexen Bedingungen, die mehrere Kriterien berücksichtigen, kannst du die SUMMEWENN oder SUMMEWENNS-Funktionen in Verbindung mit Arrayformeln verwenden.


FAQ: Häufige Fragen

1. Was ist der Unterschied zwischen einer normalen WENN-Funktion und einer Arrayformel?
Eine normale WENN-Funktion gibt für eine einzelne Zelle einen Wert zurück, während eine Arrayformel mehrere Werte gleichzeitig verarbeiten und zurückgeben kann.

2. Wie kann ich sicherstellen, dass leere Zellen nicht als Null gewertet werden?
Verwende die ISTZAHL-Funktion, um sicherzustellen, dass nur numerische Werte in die Berechnung einfließen. Eine typische Formel könnte so aussehen:

{=MITTELWERT(WENN((B2:B5="x")*(ISTZAHL(A2:A5));A2:A5))}

3. Wie schließe ich eine Arrayformel korrekt ab?
Um eine Arrayformel korrekt abzuschließen, drücke STRG + SHIFT + RETURN, anstatt nur ENTER.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige