An Introduction to Excel COUNTIF and
COUNTIFS Functions
Excel COUNTIF function is best suited for situations when you want to count cells based on a single criterion. If you want to count based on multiple criteria, use COUNTIFS function.
Syntax
=COUNTIF(range, criteria)
• range – the range of cells which you want to count.
• criteria – the criteria that must be evaluated against the range of cells for a cell to be counted.
Excel COUNTIFS function is best suited for situations when you want to count cells based on multiple criteria.
=COUNTIFS(criteria_range1, criteria1, [criteria_range2, criteria2]…) Input Arguments
• criteria_range1 – The range of cells for which you want to evaluate against criteria1.
• criteria1 – the criteria which you want to evaluate for criteria_range1 to determine which cells to count.
• [criteria_range2] – The range of cells for which you want to evaluate against criteria2.
• [criteria2] – the criteria which you want to evaluate for criteria_range2 to determine which cells to count.
Now let’s have a look at some examples of using multiple criteria in COUNTIF functions in Excel.
To get the count of cells where the criteria argument is equal to a specified value, you can either directly enter the criteria or use the cell reference that contains the criteria.
Below is an example where we count the cells that contain the number 9 (which means that the criteria argument is equal to 9). Here is the formula:
In the above example (in the pic), the criteria is in cell D3. You can also enter the criteria directly into the formula. For example, you can also use:
=COUNTIF($B$2:$B$11,9)
To get the count of cells with a value greater than a specified value, we use the greater than operator (“>”). We could either use it directly in the formula or use a cell reference that has the criteria.
Whenever we use an operator in criteria in Excel, we need to put it within double quotes. For example, if the criteria is greater than 10, then we need to enter “>10” as the criteria (see pic below):
Here is the formula:
You can also have the criteria in a cell and use the cell reference as the criteria. In this case, you need NOT put the criteria in double quotes:
There could also be a case when you want the criteria to be in a cell, but don’t want it with the operator. For example, you may want the cell D3 to have the number 10 and not >10.
In that case, you need to create a criteria argument which is a
combination of operator and cell reference (see pic below):
NOTE: When you combine an operator and a cell reference, the operator is always in double quotes. The operator and cell reference are joined by an ampersand (&).
To get the count of cells with a value less than a specified value, we use the less than operator (“<“). We could either use it directly in the formula or use a cell reference that has the criteria.
Whenever we use an operator in criteria in Excel, we need to put it within double quotes. For example, if the criterion is that the number should be less than 5, then we need to enter “<5” as the criteria (see pic below):
You can also have the criteria in a cell and use the cell reference as the criteria. In this case, you need NOT put the criteria in double quotes (see pic below):
Also, there could be a case when you want the criteria to be in a cell, but don’t want it with the operator. For example, you may want the cell D3 to have the number 5 and not <5.
In that case, you need to create a criteria argument which is a combination of operator and cell reference:
NOTE: When you combine an operator and a cell reference, the operator is always in double quotes. The operator and cell reference are joined by an ampersand (&).
To get a count of values between two values, we need to use multiple criteria in the COUNTIF function.
Here are two methods of doing this:
METHOD 1: Using COUNTIFS function
COUNTIFS function can handle multiple criteria as arguments and counts the cells only when all the criteria are TRUE. To count cells with values between two specified values (say 5 and 10), we can use the following COUNTIFS function:
NOTE: The above formula does not count cells that contain 5 or 10. If you want to include these cells, use greater than equal to (>=) and less than equal to (<=) operators. Here is the formula: =COUNTIFS($B$2:$B$11,”>=5?,$B$2:$B$11,”<=10?)
You can also have these criteria in cells and use the cell reference as the criteria. In this case, you need NOT put the criteria in double quotes (see pic below):
You can also use a combination of cells references and operators (where the operator is entered directly in the formula). When you combine an operator and a cell reference, the operator is always in double quotes. The operator and cell reference are joined by an ampersand (&).
METHOD 2: Using two COUNTIF functions
If you have multiple criteria, you can either use COUNTIFS or create a combination of COUNTIF functions. The formula below would also do the same thing:
In the above formula, we first find the number of cells that have a value greater than 5 and we subtract the count of cells with a value greater than 10. This would give us the result as 5 (which is the number of cells that have values more than 5 and less than equal to 10).
If you want the formula to include both 5 and 10, use the following formula instead:
If you want the formula to exclude both ‘5’ and ’10’ from the counting, use the following formula:
You can have these criteria in cells and use the cells references, or you can use a combination of operators and cells references.
To count cells that contain an exact match of the specified text, we can simply use that text as the criteria. For example, in the dataset (shown below in the pic), if I want to count all the cells with the name Joe in it, I can use the below formula:
Since this is a text string, I need to put the text criteria in double quotes.
You can also have the criteria in a cell and then use that cell reference (as shown below):
NOTE: You can get wrong results if there are leading/trailing spaces in the criteria or criteria range. Make sure you clean the data before using these formulas.
Similar to what we saw in the above example, you can also count cells that do not contain a specified text. To do this, we need to use the not equal to operator (<>).
Suppose you want to count all the cells that do not contain the name JOE, here is the formula that will do it:
You can also have the criteria in a cell and use the cell reference as the criteria. In this case, you need NOT put the criteria in double quotes (see pic below):
There could also be a case when you want the criteria to be in a cell but don’t want it with the operator. For example, you may want the cell D3 to have the name Joe and not <>Joe.
In that case, you need to create a criteria argument which is a combination of operator and cell reference (see pic below):
When you combine an operator and a cell reference, the operator is always in double quotes. The operator and cell reference are joined by an ampersand (&).
Excel store date and time as numbers. So we can use it the same way we use numbers.
To get the count of cells that contain the specified date, we would use the equal to operator (=) along with the date.
To use the date, I recommend using the DATE function, as it gets rid of any possibility of error in the date value. So, for example, if I want to use the date September 1, 2015, I can use theDATE functionas shown below:
This formula would return the same date despite regional differences. For example, 01-09-2015 would be September 1, 2015 according to the US date syntax and January 09, 2015 according to the UK date syntax.
However, this formula would always return September 1, 2105.
Here is the formula to count the number of cells that contain the date 0209-2015:
To count cells that contain date before or after a specified date, we can use the less than/greater than operators.
For example, if I want to count all the cells that contain a date that is after September 02, 2015, I can use the formula:
Similarly, you can also count the number of cells before a specified date. If you want to include a date in the counting, use and ‘equal to’ operator along with ‘greater than/less than’ operator.
You can also use a cell reference that contains a date. In this case, you need to combine the operator (within double quotes) with the date using an ampersand (&).
See example below:
To get a count of values between two values, we need to use multiple criteria in the COUNTIF function.
We can do this using two methods – One single COUNTIFS function or two COUNTIF functions.
METHOD 1: Using COUNTIFS function
COUNTIFS function can take multiple criteria as the arguments and counts the cells only when all the criteria are TRUE. To count cells with values between two specified dates (say September 2 and September 7), we can use the following COUNTIFS function: =COUNTIFS($A$2:$A$11,”>”&DATE(2015,9,2),$A$2:$A$11,”<“&DATE(20 15,9,7))
The above formula does not count cells that contain the specified dates. If you want to include these dates as well, use greater than equal to (>=) and less than equal to (<=) operators. Here is the formula:
You can also have the dates in a cell and use the cell reference as the criteria. In this case, you can not have the operator with the date in the cells. You need to manually add operators in the formula (in double quotes) and add cell reference using an ampersand (&). See the pic below:
METHOD 2: Using COUNTIF functions
If you have multiple criteria, you can either use one COUNTIFS function or create a combination of two COUNTIF functions. The formula below would also do the trick:
In the above formula, we first find the number of cells that have a date after September 2 and we subtract the count of cells with dates after September 7. This would give us the result as 7 (which is the number of cells that have dates after September 2 and on or before September 7).
If you don’t want the formula to count both September 2 and September 7, use the following formula instead: =COUNTIF($A$2:$A$11,”>=”&DATE(2015,9,2))-
If you want to exclude both the dates from counting, use the following formula:
Also, you can have the criteria dates in cells and use the cells references (along with operators in double quotes joined using ampersand).
There are three wildcard characters in Excel:
1. * (asterisk) – It represents any number of characters. For example, ex* could mean excel, excels, example, expert, etc.
2. ? (question mark) – It represents one single character. For example, Tr?mp could mean Trump or Tramp.
3. ~ (tilde) – It is used to identify a wildcard character (~, *, ?) in the text.
You can use COUNTIF function with wildcard characters to count cells when other inbuilt count function fails. For example, suppose you have a data set as shown below:
Now let’s take various examples:
#1 Count Cells that contain Text
To count cells with text in it, we can use the wildcard character * (asterisk). Since asterisk represents any number of characters, it would count all cells that have any text in it. Here is the formula:
Note: The formula above ignores cells that contain numbers, blank cells, and logical values, but would count the cells contain an apostrophe (and hence appear blank) or cells that contain empty string (=””) which may have been returned as a part of a formula.
If you are thinking of using COUNTA function, think again.
Try it and it might fail you. COUNTA will also count a cell that contains an empty string (often returned by formulas as =”” or when people enter only an apostrophe in a cell). Cells that contain empty strings look blank but are not, and thus counted by the COUNTA function.
COUNTA will also count a cell that contains an empty string (often returned by formulas as =”” or when people enter only an apostrophe in a cell). Cells that contain empty strings look blank but are not, and thus counted by the COUNTA function.
So if you use the formula =COUNTA(A1:A11), it returns 11, while it should return 10.
Here is the fix:
Let’s understand this formula by breaking it down:
• COUNTIF($N$8:$N$18,”?*”) – This part of the formula returns 5. This includes any cell that has a text character in it. A ? represents one character and * represents any number of characters. Hence, the combination ?* in the criteria forces excel to count cells that have at least one text character in it.
• COUNT($A$1:$A$11) – This counts all the cells that contain numbers.
In the above example, it returns 3.
• SUMPRODUCT(–ISLOGICAL($A$1:$A$11) – This counts all the cells that contain logical values. In the above example, it returns 2.
Let’s say we want to count all the cells where the sales rep name begins with J. This can easily be achieved by using a wildcard character in COUNTIF function. Here is the formula:
The criteria J* specifies that the text in a cell should begin with J and can contain any number of characters.
If you want to count cells that contain the alphabet anywhere in the text, flank it with an asterisk on both sides. For example, if you want to count cells that contain the alphabet “a” in it, use *a* as the criteria.
This article is unusually long compared to my other articles. Hope you have enjoyed it. Let me know your thoughts by leaving a comment.