Avatar billede erlandsen Seniormester
08. juli 2005 - 00:02 Der er 11 kommentarer og
1 løsning

Formel vedr. beregning af overtid

Jeg har behov for at lave en formel der beregner overtid på hverdage mellem 18:00 og 06:00...

Jeg forestiller mig noget med at definere flg:

DAG    1    6
TID    18:00    06:00
SATS    30   

Hvis man så taster f.eks. en 14 timers vagt:
VAGT    05:00    19:00

skal dette udløse to timers overtid (1 time 05:00-06.00 og 1 time 18:00-19:00) gange 30 kr. = 60 kr.

Jeg får dog specielt problemer når vagten f.eks. er 18:00-02:00; hvis jeg ikke skriver "26:00" i stedet for 02:00 - så kan den ikke finde ud af at vagten er på 8 timer men -16 - og så bliver opgaven rimelig "umulig" for mig...
Avatar billede erlandsen Seniormester
08. juli 2005 - 00:10 #1
Problemet med negativ tid har jeg løst ved at læse artiklen om Arbejdstidsregistrering - så man kan se bort fra sidste afsnit.
Avatar billede kabbak Professor
08. juli 2005 - 00:41 #2
=hvis(sluttid < Starttid;(Sluttid+1)- starttid;sluttid-starttid)
Avatar billede kabbak Professor
08. juli 2005 - 00:43 #3
nå det var sidste afsnit
Avatar billede kabbak Professor
08. juli 2005 - 09:37 #4
Denne skulle klare overtiden

Public Function Overtid(ByVal Start As Date, Slut As Date, NormalStart As Date, NormalSlut As Date) As Date
Overtid = "00:00"
If Slut < Start Then Slut = Slut + 1
If Start < NormalStart Then Overtid = (NormalStart - Start)
If Slut > NormalSlut Then Overtid = Overtid + (Slut - NormalSlut)
End Function

kaldes sådan

=overtid(A2;B2;"06:00";"18:00")

A2 = starttid
B2 = sluttid
"06:00" normaltid start
"18:00" normaltid slut
Avatar billede erlandsen Seniormester
18. juli 2005 - 20:07 #5
Hej kabbak. Beklager at jeg ikke har set dit svar før.
Jeg er ikke helt sikker på hvad jeg skal gøre med ovenstående?
Avatar billede kabbak Professor
18. juli 2005 - 22:04 #6
Public Function Overtid(ByVal Start As Date, Slut As Date, NormalStart As Date, NormalSlut As Date, Overtidsbetaling As Double)

Overtid = 0
If NormalSlut < NormalStart Then NormalSlut = NormalSlut + 1
If Slut < Start Then Slut = Slut + 1
If Start < NormalStart Then Overtid = (NormalStart - Start)
If Slut > NormalSlut Then Overtid = (Overtid + (Slut - NormalSlut))
Overtid = (Overtid * 24) * Overtidsbetaling
End Function

Denne kode sætter du ind i et modul, ikke i arkmodulet,
Når du højreklikker på fanen af et ark og vælg vis programkode
Kan du i venstre side se dine arknavne.

Oppe i menulinien vælger du
Insert > module

Nu kan du se ovre under arkene til venstre står Module1.

Se nu er Module1 makeret med grå baggrund, det er her koden skal være

I den celle du vil have beløbet for overtid, til at stå skriver du:
=overtid(A2;B2;"06:00";"18:00";30,00)

A2 = starttid
B2 = sluttid
"06:00" normaltid start
"18:00" normaltid slut
30,00 beløbet per time i overtidsbetaling

Formater cellen som tal eller valuta
Avatar billede erlandsen Seniormester
18. juli 2005 - 23:55 #7
det helt vildt! lægger du et svar kabbak...
Avatar billede kabbak Professor
19. juli 2005 - 00:29 #8
et svar ;-))
Avatar billede kabbak Professor
19. juli 2005 - 10:06 #9
tak for point
Avatar billede erlandsen Seniormester
19. juli 2005 - 10:56 #10
selv tak kabbak!
I hvilken sammenhæng arbejder du med VBA programmering i Excel? Evt. som konsulent?
Avatar billede kabbak Professor
19. juli 2005 - 13:26 #11
Jeg bruger VBA programmering på mit arbejde, jeg har en del med Excel og Access at gøre, da jeg flytter rundt med en del data, mest fra Excel til Access.

For at gøre det nemmere for mig selv, programmerer jeg en del i VBA og da programmering i Basic altid har intresseret mig, synes jeg det er sjovt, hvad man kan få ud af det.

Jeg er ikke konsulent, men jeg hjælper da også andre uden for Eksperten, med specielle opgaver.
Avatar billede erlandsen Seniormester
20. juli 2005 - 00:26 #12
kabbak - jeg kan kun bruge din formel på tillægget i hverdagene (har selv udvidet med hvis-sætning der spørger på ugedag) men har også behov for at beregne tillæg i weekenden - se gerne http://www.eksperten.dk/spm/633664 hvis du vil have yderligere 200 points?
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Excel-kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester