Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends September 15. Request your voucher.

Reply
Bigglerum
Frequent Visitor

SUMX - Problem with return value from count operation

Hi

 

I have a Column with Chemical element symbols separated by ";" in each cell, eg [ H;O;Pb;Ti]

 

There are between 1 - 16 symbols in each cell from a list of 78 valid elements in another table. 

I want to create a count of these in a new column. Where the values are validated against the list of 78 elements and then counted in the column.

I have written the expression 

SUMX(
VALUES('104 Periodic Table Filter'[Element]),
CALCULATE(COUNT('201 Mineral Information'[Elements]))

This all works fine - but where the the count of elements exceeds 11 - it stays at 11.

The data is fine and I have changed the reference elements to another source - it is the same.

Maybe there is a simpler way to count without validation?


1 ACCEPTED SOLUTION
AlexisOlson
Super User
Super User

Here's how I would count with validation using PATHCONTAINS:

ValidatedCount =
VAR CurrPath = SUBSTITUTE ( MineralInfo[ElementList], ";", "|" )
RETURN
    COUNTROWS (
        FILTER (
			PeriodicTable,
			PATHCONTAINS ( CurrPath, PeriodicTable[Element] )
		)
    )

 

View solution in original post

4 REPLIES 4
AlexisOlson
Super User
Super User

Here's how I would count with validation using PATHCONTAINS:

ValidatedCount =
VAR CurrPath = SUBSTITUTE ( MineralInfo[ElementList], ";", "|" )
RETURN
    COUNTROWS (
        FILTER (
			PeriodicTable,
			PATHCONTAINS ( CurrPath, PeriodicTable[Element] )
		)
    )

 

Thanks also - this solution works perfectly and also makes a better solution, and I can re-use the logic in other conversions - Brilliant!!!

Bigglerum

Bigglerum
Frequent Visitor

Hi thanks for you fast reply

the first solution is the same as my original query and the second doesn't seem to fire.

 

If this helps anyone - I went for a less elegant solution but it works

=LEN(TRIM(Cell))-LEN(SUBSTITUTE(TRIM(Cell),";",""))+1

ie it works out on the ";" separator and adds 1 to the total






 

amitchandak
Super User
Super User

@Bigglerum , if these tables are connected correctly then one of these two should work

 

SUMX(
VALUES('104 Periodic Table Filter'[Element]),
CALCULATE(COUNT('201 Mineral Information'[Elements])) )

 

SUMX(
Summarize('104 Periodic Table Filter','104 Periodic Table Filter'[Element], "_1",
CALCULATE(COUNT('201 Mineral Information'[Elements])) ), [_1])

 

Can you share sample data and sample output in table format? Or a sample pbix after removing sensitive data.

Share with Power BI Enthusiasts: Full Power BI Video (20 Hours) YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

Check out the August 2025 Power BI update to learn about new features.

August 2025 community update carousel

Fabric Community Update - August 2025

Find out what's new and trending in the Fabric community.