Solved

Average across mutiple sheets

Posted on 2016-10-07
5
43 Views
Last Modified: 2016-10-08
Good day.

I am creating a timesheet and have it all working except one function -  to be able to average the hours worked for the previous 9 weeks based on a holiday date.  (Sounds strange, but Provincial regulations!!!)

In the Excel Spreadsheet, I have a tab for each month, and a tab for "Defaults".
On each months Tab
    C8:AG8 has the dates
    C16:AG16 has the hours worked on each of those dates.

Note:  if a date is not worked, then 0 (zero) is recorded in row 16 for that date, therefore the average calculation has to avoid including those dates, i.e the average has to not include zeros.

On the Defaults Tab, I list the holiday and the holiday date which is updated each year - Some holidays are on the 3rd Monday of the month which means the date changes each year.

I have not be able to work out how to average the hours worked across multiple sheets.
The averageifs works, in that it has the ability to use criteria for the start and end dates and ignore 0 (zeros).  However I have not been able to get the range to work across multiple sheets.

This is some if what I have tried.
     - If I was trying to average between two dates on one tab - This works
        =AVERAGEIFS(Jul!C$16:AG$16,Jul!C$8:AG$8,">"&B33,Jul!C$8:AG$8,"<"&B24,Jul!C$16:AG$16,">0")
       
        Jul is the tab name
       C16:AG16 holds the hours worked for each day worked.
       C8:AG8 holds the date in date format.
       B33 is the start date (the holiday - (minus) 63 days (9 weeks)
       B24 is the end date (the holiday)


However when I go and try and expand the above equation to work over multiple tabs, it does not work.
       =AVERAGEIFS(Jan:Dec!C16:AG16,Jan:Dec!C$8:AG$8,">"&B33,Jan:Dec!C$8:AG$8,"<"&B24,Jan:Dec!C$16:AG$16,">0")



Any suggestion on how to average over multiple tabs using a start and end date, ignoring zeros/Null values would be appreciated.

Thank you all for help.

BTW - It will be used in Excel 2013 & 2016
0
Comment
Question by:bmcollis
  • 2
  • 2
5 Comments
 
LVL 26

Expert Comment

by:Shaun Kline
ID: 41834254
Instead of using AVERAGEIFS, try using SUMIFS and COUNTIFS. Basically you would have a sumifs for each of your month spreadsheets added together and divide that amount by the sum of all of the countifs. The basic formula:

=(SUMIFS(Jan!C16:AG16, Jan!C8:AG8, ">"&B33, Jan!C8:AG8, "<" & B24, Jan!C16:AG16, ">0") + 
SUMIFS(Feb!C16:AG16, Feb!C8:AG8, ">"&B33, Feb!C8:AG8, "<" & B24, Feb!C16:AG16, ">0") + ... + 
SUMIFS(Dec!C16:AG16, Dec!C8:AG8, ">"&B33, Dec!C8:AG8, "<" & B24, Dec!C16:AG16, ">0") ) 
/ 
(COUNTIFS(Jan!C8:AG8, ">"&B33, Jan!C8:AG8, "<" & B24, Jan!C16:AG16, ">0") + 
COUNTIFS(Feb!C8:AG8, ">"&B33, Feb!C8:AG8, "<" & B24, Feb!C16:AG16, ">0") + ... + 
COUNTIFS(Dec!C8:AG8, ">"&B33, Dec!C8:AG8, "<" & B24, Dec!C16:AG16, ">0") ) 

Open in new window

(Added returns for ease of reading. Remove them when using formula.)
0
 

Author Comment

by:bmcollis
ID: 41834473
Hi Shaun,

Thanks for the solution - it does work, although it creates a very long formula.

Pity the averageifs does not appear to work across multiple tabs.

Brian
0
 
LVL 26

Accepted Solution

by:
Shaun Kline earned 500 total points
ID: 41834566
I found another solution. If you list your sheet names in a column, you can use the SUMPRODUCT, SUMIFS/COUNTIFS, and INDIRECT functions to calculate the average across sheets.

For example, if you list your monthly sheet names in column A from row 1 to 12, your start date is in B2 and your end date is in B3, your formula would look like this: (Tested in Excel 2007)
=SUMPRODUCT(SUMIFS(INDIRECT("'"&A1:A12&"'!C16:AG16"),INDIRECT("'"&A1:A12&"'!C8:AG8"),">" & B2,INDIRECT("'"&A1:A12&"'!C8:AG8"),"<" & B3))/SUMPRODUCT(COUNTIFS(INDIRECT("'"&A1:A12&"'!C8:AG8"), ">" & B2, INDIRECT("'"&A1:A12 &"'!C8:AG8"), "<" & B3, INDIRECT("'"&A1:A12&"'!C16:AG16"), ">0"))

Open in new window


You can also create a named range for your sheet names. Just create a new Named Range using Name Manager, and enter the sheet names as ={"Jan";"Feb";"Mar";...;"Dec"}
0
 
LVL 18

Expert Comment

by:Roy_Cox
ID: 41834720
Why not have all the data on one sheet, it would be much easier to manage, maybe use PivotTables to get the reports you require.
0
 

Author Comment

by:bmcollis
ID: 41835349
Hi Shaun,

Thanks for the second take.  I had use the Indirect function in another part of the spreadsheet so had been trying to use that with the sumifs command with no luck.  Apparently missed/did not understand the sumproduct command.

So thank you for the revised and simplified  equation - worked a treat - I have marked it the Best Solution.



Hi Roy,

Thought of that, but believe for the user having separate Month tabs is easier.
Also thought having a "Year" tab, with all the months data on it, which would allow the averageifs formula to work, however at the end of the day, I thought a formula should be possible.

And thanks to Shune it is possible.
Thank your your input.
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

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

Improved? Move/Copy Add-in Replacement - How to avoid the annoying, “A formula or sheet you want to move or copy contains the name XXX, which already exists on the destination worksheet.” David Miller (dlmille)  It was one of those days… I wa…
Do you use a spreadsheet like Microsoft's Excel?  Have you ever wanted to link out to a non excel file on your computer or network drive?  This is the way I found to do it!
Graphs within dashboards are meant to be dynamic, representing data from a period of time that will change each time the dashboard is updated with new data. Rather than update each graph to point to a different set within a static set of data, t…
This Micro Tutorial will demonstrate how to use longer labels with horizontal bar charts instead of the vertical column chart.

813 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

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now