18. maj 2004 - 10:35Der er
15 kommentarer og 1 løsning
Udregning af tid på bagkant
Jeg har lavet et regneark der udfylder varebetegnelse, farve, vægt, procestid mm. automatisk når man indtaster et varenummer.
På referencearket har jeg desuden angivet tiden det tager, at producerer de forskellige emner.
Det jeg vil have det til er så, at vise sidste påbegyndelsestid for hvert emne ud fra leveringsdatoen, altså så den så at sige trækker procestiderne fra lev. datoen og angiver sidste påbegyndelsestidspunkt.
Hvis dine datoer og tider er i de rigtige formater burder det vaere muligt at traekke process-tid direkte fra leveringsdato. Men det er lidt svaert at vide uden at vide hvordan det er stillet op.
Det burde det gøre men jeg har forsøgt mig med flg.:
Jeg ville gerne have at den ud fra d.d. kan lægge et antal timer til og så fortælle mig dato og tid. Jeg har oprettet to celler med =NU() og formateret dem til hhv. dato- og klokkesletsvisning.
Som sagt skal der hertil kunne lægges f.eks. 10 timer og så viser den i nogle andre celler det tidspunkt. Den skal samtidig tage højde for arbejdsdagens længde dvs. at man arbejder 7,4 timer om dagen fra kl. 08:30 og ikke 24.
Måske det hjælper lidt med denne formullering af spørgsmålet *s*
Se det var straks vanskeligere. Excels tidsfunktioner har jo ingen kendskab til arbejdstider - og hvad hvis der indgår weekender/helligdage/ferier. Et kalenderprogram(priduktionsplanlægningsprogram med kalender ville nok være mere anvendeligt.
I øvrigt er det ikke nok at kende arbejdstiden, møde og sluttidspunkt er også nødvendige for at kunne udføre beregningen. Hvis fx en opgave varer 7 timer, kan den nås på en dag, hvis du begynder på den ved arbejdsbejstids begyndelse, men vil vare til næste dag, hv is du begynder bare 45 minutter senere. Og begynder du klokken 15, og næste dag er halv fridag, varer den til næste dasg igen.
Så det vil nok ikke være helt nemt at lave et sådant system.
Kan man ikke lave noget med hvis den er mindre end 8:30, så lægger den antallet af timer fra 16:30 dagen før til og hvis den er større end 16:30 så lægges der en dag til + de de timer der var mere end 16:30?
Det er lidt kryptisk, men jeg håber du forstår *s*
med denne "hjemmebyggede" funktion ser det ud til at kunne gøres bruges således: =FindSlutTid(Startdato og tid; Tidsforbrug; Arbejdstidsstart; arbejdstidsslut; Område med fridage(ikke weeekend))
For at bruge funktionen skal du have reference til Analysis Tooolpak (vba-version) i vab editoren og indlæst samme addin .
Public Function FindSlutTid(StartDatoTid, Tidsforbrug, Arbejdstidsstart, Arbejdstidsslut, Kalender As Range) Dim x As Long, startdato As Single, starttid As Single Dim resttid As Single, Dage As Long, nextday As Long startdato = Int(StartDatoTid) starttid = StartDatoTid - startdato resttid = Tidsforbrug If ((StartDatoTid + Tidsforbrug) < (startdato + Arbejdstidsslut)) Then FindSlutTid = StartDatoTid + Tidsforbrug Exit Function End If resttid = resttid - (startdato + Arbejdstidsslut - StartDatoTid) While resttid > 0 x = x + 1 nextday = workday(startdato, x, Kalender) If resttid - (Arbejdstidsslut - Arbejdstidsstart) > 0 Then resttid = resttid - (Arbejdstidsslut - Arbejdstidsstart) Else GoTo slut Wend slut: FindSlutTid = nextday + Arbejdstidsstart + resttid End Function
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.