Excel Bedingung Leere Zellen nicht berechnen
Folgendes: Ich habe 5 Zellen, diese sollen wie folgt addiert werden: 1/((1/A1)+(1/B1)+(1/C1)+...) und so weiter. Halt immer die Kehrwerte der Werte addieren und am Ende vom Ergebnis wieder den Kehrwert nehmen. Allerdings sollen die Zellen nur in die Berechnung einbegriffen werden, wenn in den Zellen auch etwas drin steht, da am Ende sonst immer steht #DIV/0.
Ich habe es bereits mit einer WENN-Bedingung probiert, allerdings ohne Erfolg. Bzw weiß ich nicht wie genau ich das eingeben soll.
6 Antworten
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
So, hat super geklappt :) Danke für die Hilfe und Anregungen. Ich hoffe ich konnte euch etwas zum Denksport antreiben :D
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 :)
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.
So, also mit dem ISTFEHLER hat es auch ganz gut funktioniert. Vorallem bin ich diese blöde Fehlermeldung nun los :D Dankesehr ;)
Kannst du makros programmieren ?
Arbeitsrechner - keine Makros erlaubt (Aus Sicherheitsgründen und so...)
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.
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 :)
Zweiter Nachtrag: Ok, sehe gerade, auch die alte Version hat die Funktion.
=HARMITTEL(A1:E1)/ANZAHL(A1:E1)
Um meinen Vorschlag mal in ausführlich zu schreiben:
1/(WENN(ISTFEHLER(1/A1);0;1/A1)+WENN(ISTFEHLER(1/B1);0;1/B1)+....)