Wenn-Dann Formel wird nicht richtig weitergeführt

nskjunky

Cadet 3rd Year
Registriert
Aug. 2009
Beiträge
53
Hallo liebe Forum-User,

ich habe mir Excel 2010 heruntergeladen und möchte dort mit einer wenn-dann formel eine Zeit ausrechnen.

Ich habe folgendes Problem:

Ich möchte z.B. in der Zelle A1 die Zeit 13:30 angeben

Nun möchte ich, dass excel mir berechnt, dass:
1. wenn die Uhrzeit 13:30 ist, 2 Stunden und 30 Minuten auf die Zeit addiert werden
2. wenn die Uhrzeit 16:00 ist, 4 Stunden und 30 Minuten auf die Zeit berechnet werden, und
3. wenn die Uhrzeit 20:30 ist, 17 Stunden drauf gerechnet werden.


also habe ich es mit folgender, meiner meinung nach volkommen komplizierten Formel probiert:


=WENN(A1=ZEIT(13;30;0);A1+ZEIT(2;30;0);WENN(A1=ZEIT(16;0;0);A1+ZEIT(4;30;0);WENN(A1=ZEIT(20;30;0);A1+ZEIT(17;0;0);"Hallo")))


Wenn ich das dann nach unten hin ziehe, macht er auch so lange weiter, bis es bei 13:30 angekommen ist, dann schreibt er "Hallo"

Kann man das irgenndwie in eine Endlosschleife verwandeln?



MFG,
nskjunky
 
Ich versteh weder das Problem noch das was du erreichen willst?! Kannst du n Screen hochladen?
 
Das Problem hier ist folgendes: Excel berechnet die Zeit in einem Bereich von 0 bis 1, mit 1 = 24 Stunden. 0,5 wäre also 12:00:00. Wenn du hier nun die Zeit 20:00:00 draufrechnest, kommt Excel natürlich auf 1,333333 statt auf 0,3333333. Deshalb klappt der Vergleich nicht mehr.

Das kannst du dir anschauen, indem du die Zellenart auf Standard stellst.
 
Hi, vllt. versuchst du mal

=WENN(A1=ZEIT(13;30;0);A1+ZEIT(2;30;0);WENN(A1=ZEIT(16;0;0);A1+ZEIT(4;30;0);WENN(A1=ZEIT(20;30;0);A1+ZEIT(17;0;0)-1;"Hallo")))

das sollte das von WingX angesprochene Problem beseitigen, da dann immer wieder ein Tag abgezogen wird.
 
Ich rieche WM 2010
 
Nein daran liegt es nicht. Excel wird daraus keine rekursive Schleife machen. Was hast Du überhaupt vor? Willst du jemanden hacken oder jemandens PC lahm legen?
Normalerweise beantwortet man so etwas nicht.
Ich kann Dir nur sagen, das Excel standardmäßig nicht rekursiv arbeitet. Es gibt nur eine For Schleife.
Das -1 ist unnötig, da Excel bei Stundenangaben ohne weitere Angabe die Tage nicht berücksichtigt.
 
ich möchte, dass es einfach eine "endlosschleife" berechnet.

halt, dass er die Formel immer wieder von vorne durchgeht.

WingX schrieb:
Das Problem hier ist folgendes: Excel berechnet die Zeit in einem Bereich von 0 bis 1, mit 1 = 24 Stunden. 0,5 wäre also 12:00:00. Wenn du hier nun die Zeit 20:00:00 draufrechnest, kommt Excel natürlich auf 1,333333 statt auf 0,3333333. Deshalb klappt der Vergleich nicht mehr.

Das kannst du dir anschauen, indem du die Zellenart auf Standard stellst.

was mir das bringen soll, versteh ich auch nicht. Aber ich kann ja mal sagen, was der mir ausspuckt:

0,5625
0,666666667
0,854166667
1,5625
0
0
0


Wobei diese 1.5625 jaj wieder die 13:00 Uhr sind, nur einen Tag später.
 
Excel vergleicht 0,5625 (13:30) mit 1,5625 (37:30), das ist natürlich nicht gleich, deshalb klappt das nicht. Die Lösung mit der -1 ist schon eine sinnvolle, wenn auch umständliche. Ich dachte, wenn ich dir das Problem erkläre, kommst du von allein auf ne Lösung.
 
nskjunky schrieb:
also habe ich es mit folgender, meiner meinung nach volkommen komplizierten Formel probiert:


=WENN(A1=ZEIT(13;30;0);A1+ZEIT(2;30;0);WENN(A1=ZEIT(16;0;0);A1+ZEIT(4;30;0);WENN(A1=ZEIT(20;30;0);A1+ZEIT(17;0;0);"Hallo"))
Ach, sooo kompliziert ist die Formel doch gar nicht :p
Hier einmal ein Ansatz, wie es auch noch in Zeile 250 funktioniert (oder auch am 2. Tag):
Code:
=WENN(UND(STUNDE(A1)=13;MINUTE(A1)=30);"Ein Uhr Dreißig";"Hallo")
Den Rest solltest du selbst hin bekommen.
 
ich hoffe das funzt auch mit einer Verschachtelung von Wenn-Dann formeln, aber danke schon mal

EDIT:
das scheint nicht zu funktionieren
da steht jetzt die ganze zeit 13:30
oder ich mache da etwas falsch

hier mal die Formel:

=WENN(UND(STUNDE(T2)=13;MINUTE(T2)=30);T2+STUNDE(2)+MINUTE(30);WENN(UND(STUNDE(T2)=16;MINUTE(T2)=0);T2+STUNDE(4);WENN(UND(STUNDE(T2)=20;MINUTE(T2)=30);T2+STUNDE(17);"")))
 
Zuletzt bearbeitet:
Moin,
hier mal die Formel:
=WENN(UND(STUNDE(T2)=13;MINUTE(T2)=30);T2+STUNDE(2)+MINUTE(30);
Ich habe mal einen Teil deiner Formel rot markiert. Rot, wie der Lehrer (zumindest zu meiner Zeit) Fehler markierte ... :D
Code:
=WENN(UND(STUNDE(A1)=13;MINUTE(A1)=30);ZEIT(STUNDE(A1)+2;MINUTE(A1);SEKUNDE(A1));WENN(UND(STUNDE(A1)=16;MINUTE(A1)=0);ZEIT(STUNDE(A1)+4;MINUTE(A1);SEKUNDE(A1));"Hallo, es folgt noch ein WENN ..."))
Ich weiß. die nächste (letzte) Vierschachtelung fehlt noch, aber das solltest du alleine hin bekommen. Hilfe zur Selbsthilfe ist mir wichtiger als "hingeklatschte" Komplettlösungen. Hauptsache du erkennst, wie du korrekt die Zeit addierst. Ach ja, und die (komplette) Formel ist dann doch schon ziemlich komplex aber dennoch logisch.
 
Zurück
Oben