This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. We're covering it all. You won't want to miss it.
Learn moreLevel up your Power BI skills this month - build one visual each week and tell better stories with data! Get started
I have two tables, Contacts and Accounts. I want to apply a filter on Contacts according to whether or not the Account it belongs to is within the Top 2 Accounts by Sales. So given the table below, I'd want to only see Bob and Alice.
I realize I can use the filters option but need the formula for a more complex situation
Contacts
| Name | Account |
| John | ABC Corp |
| Michael | XYZ Inc |
| Bob | Test, LLC |
| Alice | Example Inc |
Accounts
| Sales | Account |
| $100 | ABC Corp |
| $1000 | XYZ Inc |
| $5000 | Test, LLC |
| $10,000 | Example Inc |
Solved! Go to Solution.
Hi @nckpedersen ,
I created a sample pbix file(see attachment) for you, please check whether that is what you want.
1. Create two measures as below to judge if the account is Top 2 accounts
Rank = RANKX ( ALLSELECTED ( 'Accounts' ), CALCULATE ( SUM ( 'Accounts'[Sales] ) ) )Flag =
VAR _tab =
CALCULATETABLE (
VALUES ( 'Accounts'[Account] ),
FILTER ( 'Accounts', [Rank] <= 2 )
)
RETURN
IF ( SELECTEDVALUE ( 'Contacts'[Account] ) IN _tab, 1, 0 )
2. Create a table visual and apply the visual-level filter with the condition(Flag is 1)
If the above one can't help you get the desired result, please provide some sample data in your tables (exclude sensitive data) with Text format and your expected result with backend logic and special examples. It is better if you can share a simplified pbix file. You can refer the following link to upload the file to the community. Thank you.
How to upload PBI in Community
Best Regards
Hi @nckpedersen ,
I created a sample pbix file(see attachment) for you, please check whether that is what you want.
1. Create two measures as below to judge if the account is Top 2 accounts
Rank = RANKX ( ALLSELECTED ( 'Accounts' ), CALCULATE ( SUM ( 'Accounts'[Sales] ) ) )Flag =
VAR _tab =
CALCULATETABLE (
VALUES ( 'Accounts'[Account] ),
FILTER ( 'Accounts', [Rank] <= 2 )
)
RETURN
IF ( SELECTEDVALUE ( 'Contacts'[Account] ) IN _tab, 1, 0 )
2. Create a table visual and apply the visual-level filter with the condition(Flag is 1)
If the above one can't help you get the desired result, please provide some sample data in your tables (exclude sensitive data) with Text format and your expected result with backend logic and special examples. It is better if you can share a simplified pbix file. You can refer the following link to upload the file to the community. Thank you.
How to upload PBI in Community
Best Regards
This is wonderful, thank you! I feel like you just opened an entirely new area of Power BI for me!
@nckpedersen , My advice would be create TOP2 measure and use in Visual
TOPN: https://youtu.be/QIVEFp-QiOk
Otherwise first create a rank in Accounts (All new columns below )
Rank = ranxk(Accounts, [Sales],,desc, dense)
Then copy that to table Contacts
Rank contact = Maxx(filter(Accounts, Accounts[Account] = Contacts [Account] && Accounts[Rank]<=2), Accounts[Rank])
Check out the April 2026 Power BI update to learn about new features.
Sign up to receive a private message when registration opens and key events begin.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
| User | Count |
|---|---|
| 5 | |
| 4 | |
| 3 | |
| 2 | |
| 2 |
| User | Count |
|---|---|
| 7 | |
| 6 | |
| 6 | |
| 5 | |
| 4 |