Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Auftragsende berechnen
#11
Photo 
Ahh, so geht das hier.
   
Antworten Top
#12
Hallo,

falls eine Erklärung gewünscht (warum soll ich es erklären?!), ich besuche das Forum mit einem Tablet, da gibt es nur einen mäßigen viewer für xlsx-Dateien. Einen Transfer auf den pc mache ich, ist zu umständlich und auch vor den Zeiten von 'locky' war mir dies zu unsicher. Das muss niemand persönlich nehmen.

@Jensen: das Bild ist nett, aber ich kann damit nichts anfangen. Bitte schreibe das Anfangsdatum und die Dauer in den Text oder lade eine xlsx-Datei hoch.

Mfg
Antworten Top
#13
Habe das Modul gelöscht und wieder als xlsx gespeichert.
Das ganze nun im Anhang.

.xlsx   muster.xlsx (Größe: 21,19 KB / Downloads: 12)
Antworten Top
#14
(30.03.2016, 13:21)Fennek schrieb: Hallo,
...warum soll ich es erklären?!...
Mfg

Hallo, weil es sonst falsch verstanden werden könnte... Zum Beispiel könnte man das als überheblich auslegen... ... und das könnte man persönlich nehmen... Nix für ungut...
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top
#15
(30.03.2016, 13:25)Jensen schrieb: Habe das Modul gelöscht und wieder als xlsx gespeichert.
Das ganze nun im Anhang.

Hallo, wie unterscheidet sich diese Datei von der der, die du schon gepostet hast (Beitrag #3) ..?
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top
#16
Hallo Jens,

auch mit dem Start 24.3.2016 und der Dauer von 7 Stunden zeigt ir das richtige Ergebnis an.


Mfg
Antworten Top
#17
Es sind die geforderten Anfangszeiten enthalten und der "berechnen" Button. Die erste Startzeit ist auf einen Freitag in der Nacht und sollte eigentlich zwei Stunden später fertig sein, jedoch endet dieser mit der Funktion von Fennek bei mir am Sonntag.
Die zweite Startzeit wäre als Beispiel Donnerstag vor "Karfreitag" um zu testen ob die Feiertage mit einbezogen wurden, jedoch gab es auch hier bei mir ein Ende auf einem Sonntag.
Antworten Top
#18
Hallo,

ein Fehler war, dass im Makro die Standardeinstellung für den Wochentag genutzt wurde und das ist das us-Format mit 1=Sonntag

Hier die Korrektur:

Code:
Sub Jensen()
lr = cells(rows.count, "A").end(xlup).row
For i = 2 to lr
Cells(i, "C") = cells(i, "A") + cells(i, "B")
Feiertag
Beginn:
Tadd =0
Wtag = weekday(int(cells(i, "C")),2)
Select case wtag
Case 1
Tadd =0.25
Case 6
If (cdbl(cells(i, "C") - wtag) > 0.25 then Tadd =0.75
Case 7
Tadd =1
End select
Cells(i, "C") = cells(i, "C") + Tadd
If Wtag > 5 then goto beginn
Next i
End sub

Sub Feiertag()
Dim rng as range
lr2 = cells(rows.count, "i").end(xlup).row
For i = 2 to lr2
Flag = true
Do while flag
Set rng = columns("c").find(cells(i, "i"))
If not rng is nothing then
Cells(rng.row, "C") = cells(rng.row, "C") +1
Else
Flag = false
End if
Loop
Next i
End sub
Antworten Top
#19
Hallo Fennek,
jetzt kommen wir der Lösung schon näher.
Ich habe noch eine fehlende Klammer in: 
Code:
If (CDbl(Cells(i, "C") - wtag)) > 0.25 Then Tadd = 0.75

hinzugefügt.


Jetzt gibt es allerdings ein weiteres Problem, bleiben wir beim Startzeitpunkt:
24.03.2016 18:00 mit einer Dauer von 07:00 Stunden.
Die Funktion gibt mir jetzt ein Ende von: 29.03.2016 19:00 aus.
Hier mal meine Rechnung im Kopf:
Am 24.03.2016 18:00 wird gestartet und es bleiben noch 06:00 Stunden bis "Feiertag" die produktiv genutzt werden, bleiben also noch 01:00 Reststunde die erst wieder ab Dienstag 29.03.2016 06:00 starten könnten. Also wäre das theoretische Ende am: 29.03.2016 07:00.
Vielleicht habe ich auch gerade einen Denkfehler.
Antworten Top
#20
Hallo,

einige Änderungen sind mir noch aufgefallen, aber ich werde den gesamten code nicht noch einmal abtippen.

Im case 6 sollte es heisen:

Case 6
If (cdbl(cells(i, "C")) - int(cdbl(cells(i, "C")))) > 0.25 then
Tadd = 0.75
Flag = true
Else flag = false
End if

Und der Sprungbefehl muss sein:

If flag then goto Beginn

Mfg

PS: wenn etwas nicht klappen sollte, lade bitte den gesamten code hoch
Antworten Top


Gehe zu:


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