
The Excel DCOUNTA function counts matching records in a database using criteria and an optional field. When a field is provided DCOUNTA will only count numeric records when the field value is not blank. Use DCOUNT to count only numeric values in a given field.
Count matching records in a database
Numeric count of matching records
=DCOUNTA (database, [field], criteria)
The Excel DCOUNTA function counts matching records in a database using a specified field and criteria. The database argument is a range of cells that includes field headers, field is the name or index of the field to count, and criteria is a range of cells with headers matching those in database.
Using the example above, you can count records where the color is "red" and price is > 10 with these formulas:
=DCOUNTA(B7:E14,"Color",B4:E5) // field by name=DCOUNTA(B7:E14,1,B4:E5) // field by index=DCOUNTA(B7:E14,,B4:E5) // field omitted
Caution: If the value in a field is empty it will not be counted, even when criteria match.
Note: The DCOUNTA function will count numbers or text in a given field, whereas DCOUNT only counts numeric values.
The criteria can include a variety of expressions. The table below shows some examples:
| Criteria | Behavior |
|---|---|
| Red | Match "red" or "RED" |
| Re* | Begins with "re" |
| 10 | Equal to 10 |
| >10 | Greater than 10 |
| <> | Not blank |
| <>100 | Not 100 |
| >12/19/2017 | Greater than Dec 19, 2017 |
The criteria range for DCOUNT can include more than one row below the headers. When criteria includes more than one row, each row is joined with OR logic, and the expressions in a given criteria row are joined with AND logic.
Notes:

The Excel DCOUNTA function counts matching records in a database using criteria and an optional field. When a field is provided DCOUNTA will only count numeric records when the field value is not blank. Use DCOUNT to count only numeric values in a given field.
Count matching records in a database
Numeric count of matching records
=DCOUNTA (database, [field], criteria)
The Excel DCOUNTA function counts matching records in a database using a specified field and criteria. The database argument is a range of cells that includes field headers, field is the name or index of the field to count, and criteria is a range of cells with headers matching those in database.
Using the example above, you can count records where the color is "red" and price is > 10 with these formulas:
=DCOUNTA(B7:E14,"Color",B4:E5) // field by name=DCOUNTA(B7:E14,1,B4:E5) // field by index=DCOUNTA(B7:E14,,B4:E5) // field omitted
Caution: If the value in a field is empty it will not be counted, even when criteria match.
Note: The DCOUNTA function will count numbers or text in a given field, whereas DCOUNT only counts numeric values.
The criteria can include a variety of expressions. The table below shows some examples:
| Criteria | Behavior |
|---|---|
| Red | Match "red" or "RED" |
| Re* | Begins with "re" |
| 10 | Equal to 10 |
| >10 | Greater than 10 |
| <> | Not blank |
| <>100 | Not 100 |
| >12/19/2017 | Greater than Dec 19, 2017 |
The criteria range for DCOUNT can include more than one row below the headers. When criteria includes more than one row, each row is joined with OR logic, and the expressions in a given criteria row are joined with AND logic.
Notes: