Formula / Macro required to calculate hours in arrears per job

Posted on 2013-07-01
Last Modified: 2013-07-02
Hi Guys

I know you can help me on this

I have a planning sheet that lists each job situated in certain bays / areas. Each process is allocated a set amount of hours and against them, on the plan, is a letter signifying the type of resource required, eg, E for electrician so on so forth.

Each day the plant works 8 hours so each square on the plan is 8 hours worth,  Now the first thing you'll notcie is that the planned hours sometimes does not relate wholly to the amount of shaded squares.  This im not bothered as I only want to use the shaded squares to get my result.

So, in row E is the actual dates per day off which another piece of code (Kindly provided by another expert on here) that deals with holidays etc.

For this exercise, could someone help me with a formula, array, or code that will look in each job section, just out to December this year will be fine, and say if today is 1st July, count how many shaded lettered squares are in this section, under previous dates, and multiply them by 8 to give me hours / days in arrears.

Basically, we havent had a job go out on time and its the trigger to justify spending the overtime versus customer satisfaction so its quite cruicial.

I tried a few ways but to avail so any help I would very much appreciate

I have attached the actual sheet for your viewing pleasure ;o))

Question by:Jase Alexander
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
LVL 81

Expert Comment

ID: 39291459
I found this question confusing as to what you wanted. So I guessed that you want to calculate the number of hours by trade represented by letters representing that trade occurring before the date in row 6 (i.e. in columns to the left of). This formula assumes that letters will be erased when tasks are completed.

If I have completely missed the boat, could you please give a sample calculation (with correct answer) showing you want for one trade and date?

Assuming I had guessed correctly, I copied the trade initials and names to A280:B290. I then put the following formula in F280 and copied across and down:

This formula keeps a running total of the number of backlog hours (8 on weekdays, 4 on Saturday) by trade and date.

Hours for the current day are not included in the backlog. If you want current day hours included in the backlog, change the formula to:

I also had to make a change to the Worksheet_Change sub because it kept triggering when I was creating the backlog formulas. The statement setting the range for targ should be changed to:
Set targ = Range("F7:FX" & Range("B7").End(xlDown).Row)  'Watch these cells for holiday conflicts


Author Comment

by:Jase Alexander
ID: 39292419
HI Brad

Apologies for the description - it was a bit convoluted.

Your system is actually better than the concept I suggested and I will definitely be keeping this as part of the sheet.

I have re-attached the original sheet with the result of what I originally conceived. Obviously, on the plan, there are several jobs on each of the bays (eg, Keltbray Mega Railer, Atlas 1604, Flashbutt Welder etc.) These are all separate builds on each area (or bay), with the breakdown of the processes and allocated hours for each process (eg. PPI Machine, Rip Out Old Electrics etc.)

All I need for each job section (in this example I have used the Keltbray Mega Railer) is to look at any trade letters still evident on the plan before todays date and as stated, taking each day as 8 hours, put a calculation on each job header saying "Hours in Arrears" and put in a formula counting the number of trade letters multiplied by 8.  In this example, taking today's date, before this, there are 24 'jobs' in arrears (F x 2, WF x 8, HF x 11, EM x 8) which calucaltes to 24 x 8 = 192 hours in arrears for the Keltbray Mega Railer job. I have put '8' over the jobs that justify the calculation.

Is this OK ? Would you be able to re-look at this as I would ideally like to have this AND the cumulative calc you orginally set up as part of this as the more information I have to deal with various queries, the better.

LVL 81

Accepted Solution

byundt earned 500 total points
ID: 39295274
I needed to convert your header labels into real dates. So row 4 has Custom format "Week Starting "d mmmm and row 6 has Custom format ddd (with Arial Narrow font).

I could then track the hours in arrear using a formula like:
Note that you will need to change the range F19:HG48 each time you paste the formula.

You may prefer to use a somewhat longer (but computationally more efficient) formula that can be copied down, instead of changing the range F19:HG48 in each cell receiving the formula. Doing so requires adding an auxiliary column (column D in the example worksheet) with an "L" placed to mark the end of the project being studied for arrears. You can then calculate the arrears using the following formula in cell E18 (which may be copied down):
=IF(C18<>"Hrs Arrears","",SUMPRODUCT((G19:INDEX(HH19:HH$1000,MATCH("L",D19:D$1000,0))<>"")*(G$6:HH$6<TODAY())*(8-4*(WEEKDAY(G$6:HH$6)=7))))
This formula returns the number of hours of arrears if column C contains "Hrs Arrears"; if not, it returns an empty string (looks like a blank).

In the above formula, the reference to row 1000 is arbitrary. Make sure it extends beyond the end of your data.

The sample workbook contains your original spreadsheet layout in worksheet "Production Plan" with the first formula. It contains the second formula in worksheet "Production Plan (alt)".

In both cases, I only put the formula in one cell (where you had added up 192 hours). I trust that you will have no problem copying it down, making revisions as necessary.

Author Closing Comment

by:Jase Alexander
ID: 39295686
Hi Brad

Once again - outstanding !

Many thanks for your continued support it is very much appreciated.


Featured Post

Use Case: Protecting a Hybrid Cloud Infrastructure

Microsoft Azure is rapidly becoming the norm in dynamic IT environments. This document describes the challenges that organizations face when protecting data in a hybrid cloud IT environment and presents a use case to demonstrate how Acronis Backup protects all data.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Excel can be a tricky bit of software to get your head around. Whilst you’ll be able to eventually get to grips with the basic understanding of how to get by, there are a few Excel tips that not everybody will even know about let alone know how to d…
My attempt to use PowerShell and other great resources found online to simplify the deployment of Office 365 ProPlus client components to any workstation that needs it, regardless of existing Office components that may be needing attention.
Learn how to create and modify your own paragraph styles in Microsoft Word. This can be helpful when wanting to make consistently referenced styles throughout a document or template.
This Micro Tutorial will demonstrate how to use longer labels with horizontal bar charts instead of the vertical column chart.

724 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question