Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Prepping for a Fabric certification exam? Join us for a live prep session with exam experts to learn how to pass the exam. Register now.

Reply
tomperro
Helper IV
Helper IV

Adding a customized column group in table matrix

Is there a way to add a customized column group in table matrix similar to the image below?

 

tomperro_0-1718650009036.png

 

The counts are all measures.

2 ACCEPTED SOLUTIONS
Daniel29195
Super User
Super User

@tomperro this needs you to create a custom table with the intended structure. 

col1 with values : selected 6 months period ,  selected 6 month period vs previous 6 montth period. 

col2  with values : the name of the measures. 

 

then drag and drop them into the matrix in the columns. 

create one measure with switch statement : 

switch 

true() ,

selectedvalue col2 = measure1 , [ measure1]  , 

selectedvalue col2 = measure2 , [ measure2]  , 

...

 

let me know if this helps. 

 

 

View solution in original post

Anonymous
Not applicable

Hi @tomperro ,

 

Thanks for the reply from @Daniel29195 .

 

Here's the example data I created:

Test Type

Column1

Column2

111

1

18

222

2

17

333

3

16

444

4

15

555

5

14

666

6

13

777

7

12

888

8

11

999

9

10

 

Create a few simple measures:

A1 = AVERAGE('Table'[Column1])

A2 = COUNT('Table'[Column2])

B1 = SUM('Table'[Column1])

B2 = SUM('Table'[Column2])

 

Create a table:

Table 2 = CROSSJOIN(VALUES('Table'[Test Type]),{"Group A", "Group B"})

vhuijieymsft_0-1718678238992.png

 

Create two measures that serve to group A1 and B1 into Group A and A2 and B2 into Group B.

Measure = 
SWITCH(
    TRUE(),
    MAX('Table 2'[Value])="Group A",CALCULATE([A1],FILTER('Table','Table'[Test Type]=MAX('Table 2'[Test Type]))),
    MAX('Table 2'[Value])="Group B",CALCULATE([A2],FILTER('Table','Table'[Test Type]=MAX('Table 2'[Test Type])))
)

Measure 2 = 
SWITCH(
    TRUE(),
    MAX('Table 2'[Value])="Group A",CALCULATE([B1],FILTER('Table','Table'[Test Type]=MAX('Table 2'[Test Type]))),
    MAX('Table 2'[Value])="Group B",CALCULATE([B2],FILTER('Table','Table'[Test Type]=MAX('Table 2'[Test Type])))
)

 

Using the matrix visual object for display, the final page visualization is shown below:

vhuijieymsft_1-1718678238998.png

 

If this doesn't help you solve the problem. I would be grateful if you could provide me with the pbix file or sample data.

 

Remember to remove sensitive data and do not log in to your account in Power BI Desktop when uploading the pbix file.

 

If you have any other questions please feel free to contact me.

 

The pbix file is attached.

 

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!

View solution in original post

2 REPLIES 2
Anonymous
Not applicable

Hi @tomperro ,

 

Thanks for the reply from @Daniel29195 .

 

Here's the example data I created:

Test Type

Column1

Column2

111

1

18

222

2

17

333

3

16

444

4

15

555

5

14

666

6

13

777

7

12

888

8

11

999

9

10

 

Create a few simple measures:

A1 = AVERAGE('Table'[Column1])

A2 = COUNT('Table'[Column2])

B1 = SUM('Table'[Column1])

B2 = SUM('Table'[Column2])

 

Create a table:

Table 2 = CROSSJOIN(VALUES('Table'[Test Type]),{"Group A", "Group B"})

vhuijieymsft_0-1718678238992.png

 

Create two measures that serve to group A1 and B1 into Group A and A2 and B2 into Group B.

Measure = 
SWITCH(
    TRUE(),
    MAX('Table 2'[Value])="Group A",CALCULATE([A1],FILTER('Table','Table'[Test Type]=MAX('Table 2'[Test Type]))),
    MAX('Table 2'[Value])="Group B",CALCULATE([A2],FILTER('Table','Table'[Test Type]=MAX('Table 2'[Test Type])))
)

Measure 2 = 
SWITCH(
    TRUE(),
    MAX('Table 2'[Value])="Group A",CALCULATE([B1],FILTER('Table','Table'[Test Type]=MAX('Table 2'[Test Type]))),
    MAX('Table 2'[Value])="Group B",CALCULATE([B2],FILTER('Table','Table'[Test Type]=MAX('Table 2'[Test Type])))
)

 

Using the matrix visual object for display, the final page visualization is shown below:

vhuijieymsft_1-1718678238998.png

 

If this doesn't help you solve the problem. I would be grateful if you could provide me with the pbix file or sample data.

 

Remember to remove sensitive data and do not log in to your account in Power BI Desktop when uploading the pbix file.

 

If you have any other questions please feel free to contact me.

 

The pbix file is attached.

 

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!

Daniel29195
Super User
Super User

@tomperro this needs you to create a custom table with the intended structure. 

col1 with values : selected 6 months period ,  selected 6 month period vs previous 6 montth period. 

col2  with values : the name of the measures. 

 

then drag and drop them into the matrix in the columns. 

create one measure with switch statement : 

switch 

true() ,

selectedvalue col2 = measure1 , [ measure1]  , 

selectedvalue col2 = measure2 , [ measure2]  , 

...

 

let me know if this helps. 

 

 

Helpful resources

Announcements
May PBI 25 Carousel

Power BI Monthly Update - May 2025

Check out the May 2025 Power BI update to learn about new features.

Notebook Gallery Carousel1

NEW! Community Notebooks Gallery

Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.

May 2025 Monthly Update

Fabric Community Update - May 2025

Find out what's new and trending in the Fabric community.