cansevin
asked on
Countif in Excel
Attached I have a file for an example. Column C has long list of data such as "2, 6, 10". Column D has then just one number such as "2". I would like Column E to do a countif of total cells that say Column D's number in it. Any idea how to do this? Attached is a file
Practice-Sheet.xlsx
Practice-Sheet.xlsx
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Would it be easier if the data was broken up into different cells? So, instead of a cell with "2, 4, 7" it would be "2" then next to it "4' then next to it "7"?
Yes
Yes
With all due respect, the accepted solution is dreadful.
It is not designed to be copied down, and contains mistakes in logic besides:
=COUNTIF(G2:J2,D2)+COUNTIF (G2:J3,D2) +COUNTIF(G 4:J4,D2)+C OUNTIF(G5: J5,D2)+COU NTIF(G6:J6 ,D2)+COUNT IF(G7:J7,D 2)+COUNTIF (G8:J8,D2)
The second COUNTIF should use G3:J3 instead of G2:J3
If you are going to go to all the trouble of eliminating the extra spaces, then using Data....Text to Columns to split the data into separate cells, you ought to take advantage of the full capability of COUNTIF function to look at multiple columns. COUNTIF can even check columns to the right of the range with the limited set of sample data.
=COUNTIF(G:K,D2)
I've posted a sample workbook showing how the suggested array formula works with the data in the original question, as well as the revised COUNTIF formula.
Brad
Practice-SheetQ27662561.xlsx
It is not designed to be copied down, and contains mistakes in logic besides:
=COUNTIF(G2:J2,D2)+COUNTIF
The second COUNTIF should use G3:J3 instead of G2:J3
If you are going to go to all the trouble of eliminating the extra spaces, then using Data....Text to Columns to split the data into separate cells, you ought to take advantage of the full capability of COUNTIF function to look at multiple columns. COUNTIF can even check columns to the right of the range with the limited set of sample data.
=COUNTIF(G:K,D2)
I've posted a sample workbook showing how the suggested array formula works with the data in the original question, as well as the revised COUNTIF formula.
Brad
Practice-SheetQ27662561.xlsx
The formula is not desined to copy down. That is correct.
=COUNTIF(G2:J2,D2)+COUNTIF (G3:J3,D2) +COUNTIF(G 4:J4,D2)+C OUNTIF(G5: J5,D2)+COU NTIF(G6:J6 ,D2)+COUNT IF(G7:J7,D 2)+COUNTIF (G8:J8,D2)
and
The second COUNTIF should use G3:J3 instead of G2:J3. Thanks for point it out.
=COUNTIF(G2:J2,D2)+COUNTIF
and
The second COUNTIF should use G3:J3 instead of G2:J3. Thanks for point it out.
ashok111,
According to the original question <<Column C has long list of data>>. The Accepted Solution, however, uses one COUNTIF for each row of data in column C. With only seven rows of data in column C of the test workbook, I admit that one can write a brute force formula using seven COUNTIF functions. But the lack of $ dollar signs on the search range means you can't copy the formula down, letting the reference to cell D2 update, but keeping the row references fixed for columns G through K.
Furthermore, the Accepted Solution doesn't scale. If you have hundreds of rows of data the formula gets so long that you can't find a typo if one exists. Worse yet, you eventually reach the maximum allowable number of characters in an Excel formula--255 in Excel 2003 and 8192 in Excel 2010.
The above issues are why I was left spluttering when the question was closed.
I agree that splitting the data the way you have done offers some significant benefits. I also agree that COUNTIF is the right type of formula to use on the data once it is split. Where we differ is how to set up that COUNTIF.
Brad
According to the original question <<Column C has long list of data>>. The Accepted Solution, however, uses one COUNTIF for each row of data in column C. With only seven rows of data in column C of the test workbook, I admit that one can write a brute force formula using seven COUNTIF functions. But the lack of $ dollar signs on the search range means you can't copy the formula down, letting the reference to cell D2 update, but keeping the row references fixed for columns G through K.
Furthermore, the Accepted Solution doesn't scale. If you have hundreds of rows of data the formula gets so long that you can't find a typo if one exists. Worse yet, you eventually reach the maximum allowable number of characters in an Excel formula--255 in Excel 2003 and 8192 in Excel 2010.
The above issues are why I was left spluttering when the question was closed.
I agree that splitting the data the way you have done offers some significant benefits. I also agree that COUNTIF is the right type of formula to use on the data once it is split. Where we differ is how to set up that COUNTIF.
Brad
Brad,
Here is real solution that could be easily copy and pasted with CountIF().
Create a Named Range called "Test1" by selecting G2:J8 (all cells) and naming it "Test1", then
Use following in Row # 2.....
=COUNTIF(Test1,$D2)
and copy and paste above in all following rows (from Row # 3 to Row # 12)
HTH
Ashok
Here is real solution that could be easily copy and pasted with CountIF().
Create a Named Range called "Test1" by selecting G2:J8 (all cells) and naming it "Test1", then
Use following in Row # 2.....
=COUNTIF(Test1,$D2)
and copy and paste above in all following rows (from Row # 3 to Row # 12)
HTH
Ashok
Ashok,
I agree 100% with the direction of your latest suggestion.
Brad
I agree 100% with the direction of your latest suggestion.
Brad
http:#a37807775 is a functional solution (what I mean is that it works) except that it had 1 character mistyped,
Ashok
Ashok
Ashok,
With all due respect, http:#a37807775 is a valid solution only for the sample workbook posted by cansevin. It cannot possibly be used for the real problem of picking winning lottery numbers given a column C full of numbers chosen in previous draws (or whatever it is that cansevin is doing).
Your suggestion in http:#a37809216 is a much more general solution to the problem. Absent more pertinent feedback from cansevin, I believe it will work perfectly in the Asker's real workbook. If this question is referred to by another person needing help, '216 is the Comment you want to suggest he follow. And I'd be completely OK with making that Comment the Answer to this Question.
Brad
With all due respect, http:#a37807775 is a valid solution only for the sample workbook posted by cansevin. It cannot possibly be used for the real problem of picking winning lottery numbers given a column C full of numbers chosen in previous draws (or whatever it is that cansevin is doing).
Your suggestion in http:#a37809216 is a much more general solution to the problem. Absent more pertinent feedback from cansevin, I believe it will work perfectly in the Asker's real workbook. If this question is referred to by another person needing help, '216 is the Comment you want to suggest he follow. And I'd be completely OK with making that Comment the Answer to this Question.
Brad
Brad,
I downloaded your excel file from http:#a37808405 and looked at it.
Practice-SheetQ27662561.xl sx
The revised formulas look good to me.
For example
=COUNTIF(G:J,D2)
In above, you removed the row # (and it does not require multiple CountIf(s)) which makes it possible to copy & paste it.
Thanks,
Ashok
I downloaded your excel file from http:#a37808405 and looked at it.
Practice-SheetQ27662561.xl
The revised formulas look good to me.
For example
=COUNTIF(G:J,D2)
In above, you removed the row # (and it does not require multiple CountIf(s)) which makes it possible to copy & paste it.
Thanks,
Ashok
ASKER