Forum Discussion
Unique Count in Row convert
- 6 months ago
Hi Tevon713,
Thank you for the follow-up and for testing the helper-table approach.
The behaviour you are seeing occurs because Power BI measures are always evaluated based on the current filter context, so when a helper table is related back to the fact table, slicers such as Year, Region, or Product still propagate and change the result. This is why the unique count continues to vary (for example 7 instead of 14), even though the logic appears correct.
If your requirement is to count accounts that appear exactly once in the entire dataset and keep that value constant regardless of filters, the uniqueness logic must explicitly ignore report filters. You can achieve this using the following measure, which evaluates uniqueness across the full dataset and removes all filters:Truly Unique Accounts := CALCULATE ( COUNTROWS ( FILTER ( SUMMARIZE ( ALL ( 'Fact' ), 'Fact'[Acct #], "RowCnt", COUNTROWS ( 'Fact' ) ), [RowCnt] = 1 ) ), REMOVEFILTERS ( 'Fact' ) )This measure evaluates uniqueness at the Account # level and will consistently return 14, matching the intent of your original Excel logic, regardless of how the report is filtered.
Thanks again for using the Microsoft Fabric Community Forum.
In Power BI you normally don’t create a “flag” column like Excel to then “count” later. You can get the same result more cleanly with a measure (recommended). If you truly need a calculated column that mimics your Excel helper, you can do that too.
Measure:
Unique Accts (not prior yr) =
CALCULATE (
DISTINCTCOUNT ( T[Acct #] ),
T[Prior Yr Uniq Ct] <> 1
)
Calculated Column (if needed):
Uniq Ct (column) =
VAR IsPrior = 'T'[Prior Yr Uniq Ct] = 1
VAR Acct = 'T'[Acct #]
VAR FirstRowForAcct =
CALCULATE (
MIN ( 'T'[RowId] ),
FILTER ( 'T', 'T'[Acct #] = Acct )
)
RETURN
IF ( IsPrior, BLANK(), IF ( 'T'[RowId] = FirstRowForAcct, 1, BLANK() ) )
- Tevon7137 months agoHelper V
Thanks cengizhanarslan now I thinking more about it if filtering across different dimension this not distinct