Improve company productivity with a Business Account.Sign Up

x
?
Solved

Help needed in Excel with SUMPRODUCT/COUNTIFS

Posted on 2013-06-12
4
Medium Priority
?
1,107 Views
Last Modified: 2013-06-22
I have a question on the ability (or syntax) to combine SUMPRODUCT with COUNTIFS.
 
This formula returns the correct value
 
=SUMPRODUCT(COUNTIFS('Selected VDOTs'!$D$2:$D$541,M$1,'Selected VDOTs'!$C$2:$C$541,"9=High",'Selected VDOTs'!$G$2:$G$541,"Clean-Up",'Selected VDOTs'!$J$2:$J$541,{"Changes Required","Validated"}))
 
…well sort of.  The actual count is 16.  But, it’s returning 15.75. Does anyone know why?  (I changed the format of the number to 0 digits to force it to round up.  But, that’s causing a problem with Excel calculated 15.25.)
 
However, when I add the unique flag (1), the formula does not work at all.  (Is it because I’m trying to use it with COUNTIFS?)
 
=SUMPRODUCT(1/COUNTIFS('Selected VDOTs'!$D$2:$D$541,M$1,'Selected VDOTs'!$C$2:$C$541,"9=High",'Selected VDOTs'!$G$2:$G$541,"Clean-Up",'Selected VDOTs'!$J$2:$J$541,{"Changes Required","Validated"}))
 
Also,
 
How can I use an “Or” condition similar to the above with one of my criteria statements in COUNTIFS?  When I only have 1 value as my criteria for any given column, the formula works great:
=SUMPRODUCT(1/COUNTIF('Selected VDOTs'!$E$2:$E$541,'Selected VDOTs'!$E$2:$E$541)*('Selected VDOTs'!$D$2:$D$541=S$1)*('Selected VDOTs'!$C$2:$C$541="9=High")*('Selected VDOTs'!$G$2:$G$541="Clean-Up"))

Please see the attached Word doc with snippets of the data.
excel-question.docx
0
Comment
Question by:Feisty472
  • 2
4 Comments
 
LVL 37

Expert Comment

by:Norie
ID: 39243394
Could you attach an Excel document with the data?

Otherwise we'll be kind of guessing where it should go if we try to replicate your setup.
0
 
LVL 50

Expert Comment

by:barry houdini
ID: 39244053
You say that this formula returns 15.75

=SUMPRODUCT(COUNTIFS('Selected VDOTs'!$D$2:$D$541,M$1,'Selected VDOTs'!$C$2:$C$541,"9=High",'Selected VDOTs'!$G$2:$G$541,"Clean-Up",'Selected VDOTs'!$J$2:$J$541,{"Changes Required","Validated"}))

I'd be very surprised, I think one of the other formulas might but in the above COUNTIFS can only return whole numbers and SUMPRODUCT is simply summing those.

Where you have divided 1 by COUNTIFS that might give you a non-integer result.....

I'm not really sure what you are trying to do with this formula, can you explain in words what you are trying to do, why the reference to column E, is that where you want the unique count?

=ROUNDUP(SUMPRODUCT(1/COUNTIF('Selected VDOTs'!$E$2:$E$543,'Selected VDOTs'!$E$2:$E$543)*('Selected VDOTs'!$D$2:$D$543=B$1)*('Selected VDOTs'!$C$2:$C$543="9=High")),0)

As it stands I don't think that formula will work to do what you want, you can't simply combine a 1/COUNTIFS with other criteria to get a unique count

regards, barry
0
 
LVL 50

Accepted Solution

by:
barry houdini earned 2000 total points
ID: 39244064
generically to return a unique count of items in col1 where col2, col3 and col4 meet conditions you can use a formula like this

=SUM(IF(FREQUENCY(IF((Col2=Cond2)*(Col3=Cond3)*(Col4=Cond4),IF(Col1<>"",MATCH(Col1,Col1,0))),ROW(Col1)-MIN(ROW(Col1))+1),1))

confirmed with CTRL+SHIFT+ENTER

you can add or subtract conditions from this part as required

(Col2=Cond2)*(Col3=Cond3)*(Col4=Cond4)

....and if any of the conditions are for multiple matches you can use ISNUMBER(MATCH, so if col3 can be "x", "y" or "z" change to

(Col2=Cond2)*(ISNUMBER(MATCH(Col3,{"x","y","z"},0)))*(Col4=Cond4)


so with your data if the intention is to get a count of different col E values with the following criteria in other columns:

where col D = B1
where col C = "9=High"

then the formula can be as follows

=SUM(IF(FREQUENCY(IF(('Selected VDOTs'!$D$2:$D$543=B$1)*('Selected VDOTs'!$C$2:$C$543="9=High"),IF('Selected VDOTs'!$E$2:$E$543<>"",MATCH('Selected VDOTs'!$E$2:$E$543,'Selected VDOTs'!$E$2:$E$543,0))),ROW('Selected VDOTs'!$E$2:$E$543)-ROW('Selected VDOTs'!$E$2)+1),1))

confirmed with CTRL+SHIFT+ENTER

regards, barry
0
 

Author Closing Comment

by:Feisty472
ID: 39268568
Thanks Barry!
0

Featured Post

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

This article describes a serious pitfall that can happen when deleting shapes using VBA.
This article describes how you can use Custom Document Properties to store settings and other information in your workbook so that they will be available the next time you open the workbook.
This Micro Tutorial will demonstrate on a Mac how to change the sort order for chart legend values and decrpyt the intimidating chart menu.
A query can call a function, and a function can call Excel, even though we are in Access. This is Part 2, and steps you through the VBA that "wraps" Excel functionality so we can use its worksheet functions in Access. The declaration statement de…

589 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