Excel Bedingung Leere Zellen nicht berechnen

...komplette Frage anzeigen

6 Antworten

Geht es um das harmonische Mittel? Ich habe die Formel von http://www.excelformeln.de/formeln.html?welcher=480 angepasst:

{=1/(SUMME(WENN(A1:E1="";0;(1/(A1:E1))))/ANZAHL(A1:E1))}

Beachte, dass es sich um eine Matrixformel handelt. Du darfst die {} nicht eingeben, sondern musst die Formel mit Strg + Shift + Return abschließen.

Ich weiß nicht genau, ob du durch die Anzahl der Werte teilen willst, die Formel ohne dies wäre

{=1/(SUMME(WENN(A1:E1="";0;(1/(A1:E1)))))

Ebenfalls eine Matrixformel.

Nachtrag: Das wäre die Lösung für Excel 2003, für neuere Versionen ist Suboptimierers Formel natürlich viel einfacher.

DeeDee07 11.03.2014, 13:27

Zweiter Nachtrag: Ok, sehe gerade, auch die alte Version hat die Funktion.

0
BRAZ42 11.03.2014, 13:29

Also wenn, dann hätte ich noch mal durch die Anzahl teilen müssen. Habe aber jetzt die (zugegeben wirklich sehr einfache) Formel von Suboptimierer genommen ^^'

Danke trotzdem :)

0

Ich hatte mal ein ähnliches Problem und haben mir dann mit der Funktion ISTFEHLER(x) beholfen. Das gibt true wenn x ein Fehler ist und sonst false. Damit kannst du über einer weitere WENN Abfrage den Fehlerfall einfach ignorieren oder als 0 annehmen.

mondieu90 11.03.2014, 12:48

Um meinen Vorschlag mal in ausführlich zu schreiben:

1/(WENN(ISTFEHLER(1/A1);0;1/A1)+WENN(ISTFEHLER(1/B1);0;1/B1)+....)

1
BRAZ42 11.03.2014, 13:15
@mondieu90

So, also mit dem ISTFEHLER hat es auch ganz gut funktioniert. Vorallem bin ich diese blöde Fehlermeldung nun los :D Dankesehr ;)

0

mir fällt da spontan eine recht komplizierte Lösung ein, vielleicht hilft sie dir ja ;-)

du kannst so vorgehen:

überall wo du im Moment die Zellenangabe stehen hast (also z.B. A1), ersetzt du dieses A1 zu: Wenn(A1=0;1;A1).

Dadurch wird eine 1 in die Rechnung eingefügt, falls das Feld leer ist. Unglücklicherweise wird dadurch 1/1 gerechnet, was somit 1 ergibt. Diese 1 steht dann zu viel im Nenner und muss anschließend abgezogen werden, daher danach schreiben: -Wenn(A1=0;1;0)

Dadurch wird anschließend die 1 wieder abgezogen, falls das Feld leer ist.

Deine Rechnung würde dann so aussehen:

=1/((1/WENN(A1=0;1;A1)-WENN(A1=0;1;0))+(1/WENN(B1=0;1;B1)-WENN(B1=0;1;0)))

bläht sich also ziemlich auf, aber funktioniert :-D

BRAZ42 11.03.2014, 12:52

Okay, klingt vielversprechend. Dann brauch ich aber noch die Bedingung, dass er mir nicht die #DIV/0 anzeigt, wenn nirgendwo was eingetragen ist und dann sollte das funktionieren :)

0
BRAZ42 11.03.2014, 13:16

So, hat super geklappt :) Danke für die Hilfe und Anregungen. Ich hoffe ich konnte euch etwas zum Denksport antreiben :D

0

Jetzt mal abgesehen von deiner Absicht: Excel berechnet doch von sich aus nur die Werte, die er vorfindet. Wenn leere Zeilen gibt, wird auch nichts berechnet.

Deshalb verstehe ich dein "Problem" nicht ganz.

Und wenn Du zwischendurch irgendwelche Hieroglyphen stehen hast, dann liegt das an eine fehlerhafte Formel.

Ausserdem sein auch angemerkt, dass dein Weg ziemlich kompliziert ausschaut. Du hast wohl nicht viele Zeilen, sonst wärst Du längst darauf gekommen, dass es mit deiner Formel ewig dauern würde bis alle ( Beispiel 200 Zeilen) geschrieben sind. Statt 1+2+3+4+5...... nimmt man 1 bis 5 (in excel wäre das: "a1;a5" oder " a1;100"

UND: die angegebene letzte Zeile der Berechnung darf NICHT die Zeile sein in der man die Formel schreibt, sonst fühhrt das zu einer (logischen) Überlagerung und Excel kann dann zwangsläufig nur noch Unsinn als Ergebnis ausgeben.

BRAZ42 11.03.2014, 12:56

Wäre es so einfach, bloß einen Bereich auszuwählen, hätte ich das ja wohl schon getan ^^ Aber ich kann ihm nicht sagen, dass er von jeder Zahl in diesem Bereich einzeln den Kehrwert nimmt. Addiere ich erst alle Zahlen um dann den Kehrwert zu nehmen, komme ich auf ein ganz anderes (falsches) Ergebnis. Und der Fehler kommt dann zustande, weil meine Zelle unter dem Bruch steht, wenn nun keine Zahl eingetragen ist, sieht er sie als "0" an und bekanntlich kann man durch 0 nicht dividieren :) Also habe ich da ein "Problem"

0
=HARMITTEL(A1:E1)/ANZAHL(A1:E1)

Kannst du makros programmieren ?

BRAZ42 11.03.2014, 12:35

Arbeitsrechner - keine Makros erlaubt (Aus Sicherheitsgründen und so...)

0

Was möchtest Du wissen?