Monthly / Bi-Weekly Payroll Calculator

DawnAZ

New Member
Joined
Jun 18, 2014
Messages
2
Hello Everyone,

I know this topic has been covered several times but I have not found the answer within the current threads...... I am trying to build a spreadsheet that will take the error out of calculating bi-weekly overtime. :)

The yellow and green areas are my biggest issue currently. What I am trying to get is this. If the previous week of the two pay periods did NOT end on the last day of the pay period that the information in the last week of the period will carry over and auto-populate onto the next sheet then back out days paid on the previous pay period leaving only the regular hours for the current period and the OT hours for hours worked over 40.

For anyone not familiar with payroll, this is how it woks. Overtime is calculated based on 40 hours WORKED in a declared week. In my case it is a calendar week. SO, for example, if the end of the month falls on a Tuesday, then the previous week hours from Tuesday - Saturday get carried forward in order to determine overtime.

Example:
Sunday 06/27Monday 06/28Tuesday 06/29Wednesday 06/30Thursday 07/01Friday 07/02 Saturday 07/03
Hours worked 0Hours worked 8Hours worked 8Hours worked 8Hours worked 8Hours worked 8Hours worked 8

June 30 fell on a Wednesday therefore, there is a carryover of hours to determine the OT worked for an employee. The week of 06/27-07/03 is needed to determine if the employee worked over 40 hours. If so, hours over 40 will be paid at an OT rate. The regular hours worked from 06/27-06/30 will have been paid already on the previous period so the employee would be paid for regular hours worked on Thursday 07/01, Friday 07/2 and Saturday 07/03.
In this example the employee worked 48 hours this week, 24 of those hours were paid on the previous period so he would be paid 24 hours at a regular rate and 8 hours at an overtime rate for this week.

This is what I am trying to figure our how to create in Excel...... THANK YOU in advance!!!!


TimeSheet-Calculator_-2021_v1.xlsx
BCDEFGHIJ
7PREVIOUS PERIOD (For OT Calculations ONLY)
8YearMonthDateWeekend
92021June27Sat & Sun
10
11YearMonthDateWeekend
122021June1Sat & Sun
13
14
15Start TimeRegular HoursRegular Pay (hourly)Comp TIme (hourly x1.5)
168:008
17
18Hours Previously Paid to Determine OT / Comp Time
19
20
21DayDateIn TimeOut TimeBreak HrsRegular HrsOT HoursTotal Pay
22Fri279:00 AM6:00 PM1.06.02.00.0
23Sat28   
24Sun29   
25Mon30   
26Tue31   
27Wed1   
28Thu2   
29
30Weekly Summary1.06.02.00.0
31
32CURRENT PERIOD PAYROLL
33
34DayDateIn TimeOut TimeBreak HrsRegular HrsOT HoursTotal Pay
35Sun19:00 AM6:00 PM1.06.02.00.0
36Mon2   
37Tue3   
38Wed4   
39Thu5   
40Fri6   
41Sat7   
42Sun8   
43Mon9   
44Tue10   
45Wed11   
46Thu12   
47Fri13   
48Sat14   
49Sun15   
50     
51
52Bi-weekly Summary1.06.02.00.0
53
July Week 1
Cell Formulas
RangeFormula
B22,B50B22=C22
C22C22=$E$9
B23:C28,B36:C49B23=B22+1
G22:G28,G35:G50G22=IFERROR(IF(AND(D22<>"",E22<>""),IF(D22>$C$16+TIME($D$16,($D$16-INT($D$16))*60,0),0,IF(E22>$C$16+TIME($D$16,($D$16-INT($D$16))*60,0),MIN(TIME($D$16,($D$16-INT($D$16))*60,0),($C$16+TIME($D$16,($D$16-INT($D$16))*60,0)-D22)),MIN(IF((E22-$C$16)<0,0,(E22-$C$16)),(E22-D22))))*24,"")-F22,"")
H22:H28,H35:H50H22=IF(AND(D22<>"",E22<>""),((IF(D22<$C$16,MIN($C$16-D22,E22-D22),0)+IF(E22>$C$16+TIME($D$16,($D$16-INT($D$16))*60,0),MIN((E22-$C$16-TIME($D$16,($D$16-INT($D$16))*60,0)),(E22-D22)),0))*24),"")
I22:I28,I35:I50I22=IFERROR(G22*IF(AND(ISNUMBER(SEARCH(TEXT(B22,"ddd"),$F$9)),'OT Data'!$F$2),$F$16,$E$16)+H22*$F$16,"")
F30:I30F30=SUM(F22:F28)
B35B35=DATE($C$9,MATCH($D$9,'OT Data'!$B$2:$B$13,0),'July Week 1'!$E$9)
C35C35=$E$12
C50C50=IF(C49=15,"",C49+1)
F52:I52F52=SUM(F35:F48)
Cells with Conditional Formatting
CellConditionCell FormatStop If True
B50:I50Cellcontains a blank value textNO
B35:I50,B22:I28Expression=ISNUMBER(SEARCH(TEXT($B22,"ddd"),$F$9))textNO
Cells with Data Validation
CellAllowCriteria
D35:D50Custom=AND($D35<=1,ISNUMBER($D35))
E35:E37Custom=AND($E35<=1,ISNUMBER($E35),($E35>=$D35))
E38:E50Custom=AND($E38<=1,ISNUMBER($E38),($E38>$D38))
D22:D28Custom=AND($D22<=1,ISNUMBER($D22))
E22:E28Custom=AND($E22<=1,ISNUMBER($E22),($E22>=$D22))
C9:C10List='OT Data'!$A$2:$A$12
D9:D10List='OT Data'!$B$2:$B$13
E9:E10List=DateCalc
F9:F10List='OT Data'!$D$2:$D$16
C12:C13List='OT Data'!$A$2:$A$12
D12:D13List='OT Data'!$B$2:$B$13
E12:E13List=DateCalc
F12:F13List='OT Data'!$D$2:$D$16
 

Excel Facts

Best way to learn Power Query?
Read M is for (Data) Monkey book by Ken Puls and Miguel Escobar. It is the complete guide to Power Query.

Forum statistics

Threads
1,223,903
Messages
6,175,287
Members
452,631
Latest member
a_potato

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top