nachdem ich schon längere Zeit hier "mitlese" und viele gute Ideen und Ansätze gefunden habe komme ich nun mit einem Problem "um die Ecke", das ich alleine nicht in den Griff bekomme:
Derzeit arbeite ich an einer Arbeitsmappe zur Arbeitszeitberechnung, in der für jeden Monat ein Tabellenblatt (plus ein zusätzliches Auswertungsblatt) liegen. Jeder Arbeitstag wird in einer Zeile berechnet:
In den Spalten D bis G geben die Benutzer händisch folgende Angaben ein:
Spalte D:Uhrzeit Arbeitsbeginn (Morgen)
Spalte E: Uhrzeit Mittagspausenbeginn
Spalte F: Uhrzeit Mittagspausenende
Spalte G: Uhrzeit Arbeitsende (Abend)
In Spalte H wird eine Formel zur Berechnung Summe der Arbeitsstunden berechnet und formatiert mit
Sheets(1).Cells(4, 10).FormulaR1C1 = "=IF(RC[-2]>RC[-1],RC[-2]-RC[-1],""0:00"")"
Sheets(1).Cells(4, 9).NumberFormat = "[h]:mm"
Aus einer Userform werden die Soll-Arbeitsstunden pro Wochentag in Spalte I übernommem.
In Spalte J sollen die Überstunden berechnet werden:
Sheets(1).Cells(TagesZeilen, 10).FormulaR1C1 = "=IF(RC[-2]>RC[-1],RC[-2]-RC[-1],""0:00"")"
Sheets(1).Cells(TagesZeilen, 10).NumberFormat = "[h]:mm"
In Spalte K sollen Minusstunden berechnet werden:
Sheets(1).Cells(TagesZeilen, 11).FormulaR1C1 = "=IF(RC[-3]<RC[-2],""0:00"",RC[-2]-RC[-3])"
Sheets(1).Cells(TagesZeilen, 11).NumberFormat = "[h]:mm"
Das eigentliche Problem: die Berechnungsergebnisse in den Spalten J und K aktualisieren sich nicht, wenn der Benutzer die Handeingaben in den Spalten D bis G verändert! Einzige Ausnahme: wird zum Beispiel in Spalte G anstatt "17:00" (versehentlich) nur ":00" eingegeben, erscheint in den Spalten H, J und K der Eintrag "#WERT!".
Ich hoffe, ich konnte das Problem verständlich darlegen und würde mich sehr freuen, wenn mir hierbei jemand weiterhelfen könnte! Schon jetzt vielen Dank für eure Bemühungen!
Viele Grüße
andittel
P.S.: Eventuell noch zwei "sachdienliche" Hinweise (?):
1. Ich benutze Excel 2016;
2. der gesamte Code liegt der vorher erwähnten UserForm.