Power BI is turning 10, and we’re marking the occasion with a special community challenge. Use your creativity to tell a story, uncover trends, or highlight something unexpected.
Get startedJoin us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.
Hi Everyone,
I want to sort the data in a matrix in a specific order. When I select a value in the slicer.
Below is the raw data:
The matrix visual contains Product and Value [Measure].
Raw Data
Slicer
The order in which the products need to be sorted depends on the year value selected in the slicer.
Raw Data :
Table | ||
Product | Year | Value |
P3 | 2023 | 100 |
P2 | 2023 | 200 |
P1 | 2023 | 300 |
P8 | 2023 | 40 |
P6 | 2023 | 100 |
P1 | 2024 | 200 |
P3 | 2024 | 300 |
P2 | 2024 | 40 |
P14 | 2024 | 100 |
P12 | 2024 | 200 |
slicer : Year
2023
2024
Required order, when we click on slicer :
Order Required | |
2023 | 2024 |
Order | order |
P1 | P1 |
P2 | P2 |
P3 | P3 |
P6 | P12 |
P8 | P14 |
Solved! Go to Solution.
Hi @Madhu7624 ,
Thanks for the reply from BeaBF .
First, create a calculated column to extract the number of products.
ProductNumber =
VALUE(
MID('Table'[Product],2,2)
)
Then, create a calculated column to sort the numbers.
Order =
RANKX(
FILTER(
'Table',
'Table'[Year] = EARLIER('Table'[Year])
),
'Table'[ProductNumber],
,
ASC,
DENSE
)
Please create a matrix visual object for display. Drag Oder to the rows, Year to the columns, and Product to the values. the final visual is shown below:
The pbix file is attached.
If you have any other questions please feel free to contact me.
Best Regards,
Yang
Community Support Team
If there is any post helps, then please consider Accept it as the solution to help the other members find it more quickly.
If I misunderstand your needs or you still have problems on it, please feel free to let us know. Thanks a lot!
Hi @Madhu7624 ,
Thanks for the reply from BeaBF .
First, create a calculated column to extract the number of products.
ProductNumber =
VALUE(
MID('Table'[Product],2,2)
)
Then, create a calculated column to sort the numbers.
Order =
RANKX(
FILTER(
'Table',
'Table'[Year] = EARLIER('Table'[Year])
),
'Table'[ProductNumber],
,
ASC,
DENSE
)
Please create a matrix visual object for display. Drag Oder to the rows, Year to the columns, and Product to the values. the final visual is shown below:
The pbix file is attached.
If you have any other questions please feel free to contact me.
Best Regards,
Yang
Community Support Team
If there is any post helps, then please consider Accept it as the solution to help the other members find it more quickly.
If I misunderstand your needs or you still have problems on it, please feel free to let us know. Thanks a lot!
@Anonymous Yes but the RANKX is significantly more computationally expensive and resource-intensive compared to a simple sort by column operation, I recommend to use my process.
BBF
i have attached in question
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 |
---|---|
10 | |
9 | |
8 | |
7 | |
6 |
User | Count |
---|---|
14 | |
13 | |
11 | |
9 | |
8 |