Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredPower BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.
Hello,
I am trying to create a column that basically counts the number of columns for each row that are not blank. See image. The value i'm looking for would be 4 for the top few rows since ther are 4 columns that are not null.
Is there a way to do this in query editor?
Solved! Go to Solution.
Yes, if you click Custom Column on the ribbon, in the dialog box enter this in the formula section:
=List.NonNullCount(Record.FieldValues(_))
Regards,
Owen
Hi,
I had a similar issue where i need to count 5 different Columns with non blank values that indicate some actions were taken for specific MoC. So, when I select a MOC - i need to see the count of actions taken. I did the following DAX : a calculated Col in the table
Count Action =
VAR Col1nonblank = IF(ISBLANK('Table1'[Action 1]), 0, 1)
VAR Col2nonblank = IF(ISBLANK('Table1'[Action 2]), 0, 1)
VAR Col3nonblank = IF(ISBLANK('Table1'[Action 3]), 0, 1)
VAR Col4nonblank = IF(ISBLANK('Table1'[Action 4]), 0, 1)
VAR Col5nonblank = IF(ISBLANK('Table1'[Action 5]), 0, 1)
RETURN Col1nonblank + Col2nonblank + Col3nonblank + Col4nonblank + Col5nonblank
-A data card visual-> sum of -> Count Action
Just sharing this in case it helps someone else! Cheers! 🙂
Thank you so much! This worked perfectly for me, much appriciated!
Amazing, thank you @OwenAuger !!
I tried to combine what you sent above with the List.Range, because I need to count the number of blanks in the first five rows. So I tried various combinations:
List.Count(List.Range(Record.FieldValues(_), 1, 5, each _=""))
List.Count(List.Range(Record.FieldValues(_), each _="", 1, 5))
List.Count(List.Select(Record.FieldValues(_), 1, 5, each _=""))
List.Count(List.Select(Record.FieldValues(_), each _="", 1, 5))
None of them worked... do you think it's possible to do? Perhaps I need to nest a List.Select within a List.Range or vice versa?
Whoops, nevermind, got it! I had to nest them. Just in case this ever helps anyone else, here is what the final formula looked like:
List.Count(List.Range(List.Select(Record.FieldValues(_), each _=""), 1, 5))
Thanks @OwenAuger !
Dear
Thank you for sharing the custom column DAX for List.NonNullCount(Record.FieldValues(_)) is working but 178,232 row showing blank out of 672,746 Rows. i cross-checked the information available. i can not why its showing blank. can you please help me to solve this problem
Regards
Munish Bawa
What if I don't want to include every column in the count, what if I only want to count columns 2 - 8?
If you want to select columns by position, you could wrap List.Range around Record.FieldValues. For example, this would be the Custom Column Formula in the Custom Column dialog box:
=List.NonNullCount(List.Range(Record.FieldValues(_),1,7))
Regards
Owen
@jtolmenand @OwenAuger thanks for your help on this - it also helped me!
Instead of null, my cells are blank. Is there an equivalent M formula for that?
I can't make them null instead of blank, because I am also creating a custom column that concatenates their values. If I make any of the cells null, the whole cell becomes null for some reason.
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
Check out the June 2025 Power BI update to learn about new features.
User | Count |
---|---|
84 | |
76 | |
73 | |
42 | |
36 |
User | Count |
---|---|
109 | |
56 | |
52 | |
48 | |
43 |