Get certified for free when you join Fabric Data Days 2026 and dive into Fabric, Power BI, SQL, AI, and other essential data skills.
Join nowData Days is here! Join us now for 60+ days of learning, challenges, and connection. Learn more
I have a table that holds uniqueasset and asset age and I am trying to create a dynamic filter in order to show the Top 15% of the oldest assets. I created a uniquerank column since there are many duplicates of asset age.
Measures created:
UniqueRank =
RANKX(
Data,
Data[asset age] * 1000000 + Data[Index],
,
DESC,
DENSE
)
TotalAssets = COUNTROWS(ALL(Data))
Top15PercentCount = CEILING([TotalAssets] * 0.15, 1)
Top15PercentThresholdRank =
CALCULATE(
MAXX(
TOPN([Top15PercentCount], ALL(data), data[UniqueRank], DESC),
data[UniqueRank]
)
)
I then created a column to use as a filter:
IsTop15Percent =
IF(
MAX(data[UniqueRank]) <= [Top15PercentThresholdRank],
1,
0
)
However, when I use as a filter it is placing all assets/rows into the Top 15% when I believe it should be flagging 1,876 of them.
What am I doing incorrectly? pbix file here: Top 15 Percent Oldest Assets
TIA!
Solved! Go to Solution.
Hi,
PBI file attached.
Hope this helps.
Hi,
Please check the below picture and the attached pbix file.
Hi,
Please check the below picture and the attached pbix file.
@Ashish_Mathur Your method also appears to work, however I did not try it in my actual data model, but your example is correct. Thank you!
You are welcome.
Don't miss out on Data Days, June 15 through August 7. Learn Fabric, Power BI, SQL, AI and more.
Check out the May 2026 Power BI update to learn about new features.
| User | Count |
|---|---|
| 23 | |
| 23 | |
| 21 | |
| 20 | |
| 15 |
| User | Count |
|---|---|
| 58 | |
| 55 | |
| 43 | |
| 30 | |
| 24 |