Zeit berechnen mit Zuschlag Sa auf So
#11
Maktanixe ... wir warten hier ja nicht nur auf Dich.
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel). 
Top
#12
Guten Morgen zusammen,

Mir ist eben etwas ganz komisches passiert, so wirklich gaaanz komisch:

Ich habe mir überlegt, warum nicht einfach "Keep it short and simple"?

Hinweise:
C ist Beginn, D Ende, E Zuschlagsstunden, F Totalstunden (C bis D und dann die 23-6 Uhr * 1.1)
6er Reihe ist Freitag,
7er Reihe ist Samstag.

Für Normale Tage, bei denen 23-6 Uhr mit Zuschlag gezählt wird, habe ich ja für die Anzahl Stunden (Ohne den Zuschlag) diese Formel:
1. FORMEL
Code:
=WENN(C6="";0;(ANZAHL(C6:D6)=2)*MAX(6/24-C6;0)+MIN(D6-6/24;0)+MAX(D6-23/24;0)+MIN(23/24-C6;0)+(C6>D6)*7/24)

Für die Berechnung des Zuschlages daraus habe ich
2. FORMEL
Code:
=WENN(D6<C6;(D6+1)-C6;D6-C6)-E6+(E6*1.1)

Jetzt habe ich mir überlegt, was, wenn ich einfach ein MIN an die Zuschlagsformel hänge, etwa so:
3. FORMEL
Code:
=WENN(D7<C7;(D7+1)-C7;D7-C7)+MIN(C7-23/24;0)

Zu meiner Verwunderung funktioniert so die Berechnung exakt wie ich wollte, das einzige Problem, das mir gerade noch aufgegangen ist: Ich hab die Formel für die normale Tageszeitberechnung nicht mehr drin Angel
Ist ja an und für sich nicht so schlimm, wüsste ich wie man zwei Formeln verbindet. Eigentlich würde man das ja mit =WENN(ODER(...)) machen, aber in diesem Fall habe ich ja die ganze =WENN(BEDINGUNG, WAHR, FALSCH) schon mit der normalen Formel, also wie kann ich die 1. FORMEL mit der 3. FORMEL kombinieren?
Ich hab das so versucht:
Code:
=WENN(C7="";0;(ANZAHL(C7:D7)=2)*MAX(6/24-C7;0)+MIN(D7-6/24;0)+MAX(D7-23/24;0)+MIN(23/24-C7;0)+(C7>D7)*7/24)=ODER(D7<C7;(D7+1)-C7;D7-C7)+MIN(C7-23/24;0)


Was soll ich sagen, die Tageszeit wird normal berechnet, aber sobald die Zuschlagszeit angekratzt wird, gibt die Zeile FALSCH aus und es funktioniert nicht, resp. es rechnet einfach normal ohne die Zuschlagsstunden anzugeben.
Könnt ihr mir sagen, wo ich einen Fehler habe?

Dankeschön

@LCohen, geht die VB Variante auch, wenn man nur Excel hat (nach der Implementierung)?
Top
#13
Nochmal: Es gibt keine VBA-Variante.

VBA wird einzig dafür verwendet, um unter Excel diese Formel-Datei zu erstellen. Damit ist nicht eine Vorab-Datei 22 KB groß, sondern der sie erstellende Code nur 2,2 KB.
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel). 
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste