Clever-Excel-Forum

Normale Version: Mittelwert aus einzelnen Zellen wenn nicht 0
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

irgendwie hätte ich nicht gedacht, dass ich mal Hilfe bei sowas brauche, aber irgendwie will Excel nicht wie ich will.
Ich möchte aus einzelnen Zellen, also kein Bereich, den Mittelwert errechnen. Die Zellen können die Werte 0 enthalten, die nicht mit einkalkulieren werden sollen.

Habe mit =MITTELWERTWENN(...) und auch mit =ZÄHLENWENN(...) bzw. noch mit Versuchen aus UND und ISTZAHL herum hantiert.

Leider will es mir nicht gelingen.

Habt Ihr das schon einmal hinbekommen und könnt mir Helfen, wie das gehen kann, wenn man keinen Bereich hat, sondern Einzel-Zellen?
Hallo,

meinst Du so etwas?
https://www.herber.de/excelformeln/pages...ormel.html

Gruß
Marcus
Bin mir nicht ganz sicher, aber mit den richtigen Parametern könnte das auch mit AGGREGAT() funktionieren.

BG ruppy
Hallo ruppy,

wenn ich dem trauen kann, was der TE angibt, hat er Excel2007. Da gibt es kein Aggregat.

Gruß
Marcus
P.S.: Ich bin aber immer wieder erstaunt, was Du alles weißt. Musst ein Matheass sein. Wüßte ich auch gerne.
Hi marose67,

danke für das Kompliment. Bin Analyst und nutze viel Excel, PowerBI, R usw.

Was meinen Vorschlag angeht. Ich bin schon so tief in neuestes Excel verstrickt, dass ich zum Teil nur noch die "neuen" Lösungswege kenne. Liebe besonders die neuen dynamischen Arrays und XVERWEIS(), EINDEUTIG() usw. Und natürlich Power Query.

Weis gar nicht wie ich die Sachen früher gemacht habe.

Also entschuldigt bitte wenn ich manchmal mit den neuen Funktionen um die Ecke komme.

BG ruppy
(07.02.2020, 09:10)marose67 schrieb: [ -> ]meinst Du so etwas?
https://www.herber.de/excelformeln/pages...ormel.html


Hallo marose67,

danke Dir für diesen Link. Damit bin ich tatäschlich zum Ziel gekommen:

Code:
{=MITTELWERT(WENN(N(INDIREKT({"A4";"B1";"C3";"D2";"E2"}));N(INDIREKT({"A4";"B1";"C3";"D2";"E2"}))))}

Die Funktionen N(..) und INDIREKT(...) und vor allem {...} waren mir bisher leider noch nicht bekannt.

Die Frage für mich war, warum sowas hier nicht funktioniert?
Code:
{=MITTELWERTWENN({"A4";"B1";"C3";"D2";"E2"};"<>0")}

Oder auch sowas hier
Code:
=ZÄHLENWENN({"A4";"B1";"C3";"D2";"E2"};"<>0")

Vielleicht ließe es sich aber noch einfacher umsetzen mit folgender Formel?
Code:
=MITTELWERTWENN(INDIREKT({"A4";"B1";"C3";"D2";"E2"});"<>0")


PS: Genau, ich nutze Excel 2007
{=MITTELWERTWENN({"A4";"B1";"C3";"D2";"E2"};"<>0")}

"A4" bedeutet in diesem Fall der Text "A4" und nicht die Zelle A4.

Geschweifte Klammern müssen nicht über die Tastatur eingegeben werden, sondern werden von Excel hinzugefügt, wenn du eine Formel
mit "STRG+SHIFT+ENTER" abschließt. Das musst du wenn es sich um eine Matrix-Formel handelt.

Hier im Forum wird dann von CSE gesprochen (CTRL+SHIFT+ENTER).

Mit der Funktion N() lassen sich unter gewissen Umständen auch direkt in Formeln Kommentare schreiben.
Das kann man manchmal ganz hilfreich sein, um komplexe Formeln später wieder nachvollziehen zu können.

Bsp: 

MITTELWERT(D7:D8)+N("Berechnet den Mittelwert der D7 und D8")

N() wird dann zu 0 und verzerrt den Mittelwert somit nicht. 
Gibt natürlich nur in Situationen Sinn in denen +0 nichts am Formelergebnis ändert.

BG ruppy
Danke Dir, das waren jetzt sehr hilfreiche Hinweise!

Code:
=MITTELWERTWENN({J6;J12};"<>0")
zum Beispiel ergibt nur "BEZUG", also etwas ist da falsch

Genauso mit folgendem:
Code:
{=MITTELWERTWENN(INDIREKT(J6;J12);"<>0")}

Und sowas gibt dann sogar einen Fehler in der Formel:
Code:
{=MITTELWERTWENN(INDIREKT({J6;J12});"<>0")}
Code:
=MITTELWERTWENN(INDIREKT({J6;J12});"<>0")