1500 characters remaining

# COUNTX Function (DAX)

Counts the number of rows that contain a number or an expression that evaluates to a number, when evaluating an expression over a table.

## Syntax

```
COUNTX(<table>,<expression>)
```

## Parameters

Term

Definition

table

The table containing the rows to be counted.

expression

An expression that returns the set of values that contains the values you want to count.

An integer.

## Remarks

The COUNTX function takes two arguments. The first argument must always be a table, or any expression that returns a table. The second argument is the column or expression that is searched by COUNTX.

The COUNTX function counts only numeric values, or dates. Arguments that are logical values or text that cannot be translated into numbers are not counted. If the function finds no rows to count, it returns a blank.  When there are rows, but none meets the specified criteria, then the function returns 0.

If you want to count logical values, or text, use the COUNTA or COUNTAX functions.

The following formula returns a count of all rows in the Product table that have a list price.

```=COUNTX(Product,[ListPrice])
```

The following formula illustrates how to pass a filtered table to COUNTX for the first argument. The formula uses a filter expression to get only the rows in the Product table that meet the condition, ProductSubCategory = "Caps", and then counts the rows in the resulting table that have a list price. The FILTER expression applies to the table Products but uses a value that you look up in the related table, ProductSubCategory.

```=COUNTX(FILTER(Product,RELATED(ProductSubcategory[EnglishProductSubcategoryName])="Caps", Product[ListPrice])
```