Solved

Help needed in Excel with SUMPRODUCT/COUNTIFS

Posted on 2013-06-12
4
777 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 33

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 500 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

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

A little background as to how I came to I design this code: Around 5 years ago I designed an add-in that formatted Excel files to a corporate standard, applying different cell colours and font type depending on whether the cells contained inputs,…
Introduction While answering a recent question (http:/Q_27311462.html), I created an alternative function to the Excel Concatenate() function that you might find useful.  I tested several solutions and share the results in this article as well as t…
This Micro Tutorial will demonstrate the scrolling table in Microsoft Excel using the INDEX function.
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

808 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