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

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply

Add calculated item to a Matrix

Hello,

i am using a matrix to group my data like this.

Dashboard.JPG

the last 3 columns are measures.

I want to add calculates items(yellow rows) and get a result like this.

dashboard resultado.JPG

 

How can i do it? 

thanks for your help.

 

2 ACCEPTED SOLUTIONS
v-juanli-msft
Community Support
Community Support

Hi @carloscabreraq

There is no direct way in Power BI to achieve this requirment.

Here is a workaround

 

1.Create a new table with the same structure as your "transaccion" table,

This is to say, the new table has the same numbers of columns and the same column names, but only keep two rows and let the cells filled with 0 except the [tipo] column.

9.png

I create this table using Excel:

Copy the whole "transaccion" table, then paste in the Excel, 

delete all rows from this table in Excel, but keep the column header,

fill "e","f" in the [tipo] column as above, fill 0 in other cells (only create two rows)

 

2. import created table above into Power BI, the append this table to "transaccion" table in Power Query

Open Queries editor,

in "transaccion" table, select Home->"Append", 

10.png

then Close&&Apply, go to Report view

 

3. create measures based on the three measures

Last Month1 =
VAR sub_e =
    CALCULATE ( [Last Month], FILTER ( ALL ( transaccion ), [tipo] = "d" ) )
        - CALCULATE ( [Last Month], FILTER ( ALL ( transaccion ), [tipo] = "c" ) )
VAR sub_f =
    CALCULATE ( [Last Month], FILTER ( ALL ( transaccion ), [tipo] = "a" ) )
        + sub_e
RETURN
    SWITCH ( MAX ( [tipo] ), "e", sub_e, "f", sub_f, [Last Month] )

11.png

Last MTD1 =
VAR sub_e =
    CALCULATE ( [Last MTD], FILTER ( ALL ( transaccion ), [tipo] = "d" ) )
        - CALCULATE ( [Last MTD], FILTER ( ALL ( transaccion ), [tipo] = "c" ) )
VAR sub_f =
    CALCULATE ( [Last MTD], FILTER ( ALL ( transaccion ), [tipo] = "a" ) )
        + sub_e
RETURN
    SWITCH ( MAX ( [tipo] ), "e", sub_e, "f", sub_f, [Last MTD] )


MTD1 =
VAR sub_e =
    CALCULATE ( [MTD], FILTER ( ALL ( transaccion ), [tipo] = "d" ) )
        - CALCULATE ( [MTD], FILTER ( ALL ( transaccion ), [tipo] = "c" ) )
VAR sub_f =
    CALCULATE ( [MTD], FILTER ( ALL ( transaccion ), [tipo] = "a" ) )
        + sub_e
RETURN
    SWITCH ( MAX ( [tipo] ), "e", sub_e, "f", sub_f, [MTD] )

 

Best Regards

Maggie

 

 

View solution in original post

Hi @carloscabreraq

To let this measure work with slicer, change "ALL"to "ALLSELECTED".

 

Best Regrads

Maggie

View solution in original post

4 REPLIES 4
v-juanli-msft
Community Support
Community Support

Hi @carloscabreraq

There is no direct way in Power BI to achieve this requirment.

Here is a workaround

 

1.Create a new table with the same structure as your "transaccion" table,

This is to say, the new table has the same numbers of columns and the same column names, but only keep two rows and let the cells filled with 0 except the [tipo] column.

9.png

I create this table using Excel:

Copy the whole "transaccion" table, then paste in the Excel, 

delete all rows from this table in Excel, but keep the column header,

fill "e","f" in the [tipo] column as above, fill 0 in other cells (only create two rows)

 

2. import created table above into Power BI, the append this table to "transaccion" table in Power Query

Open Queries editor,

in "transaccion" table, select Home->"Append", 

10.png

then Close&&Apply, go to Report view

 

3. create measures based on the three measures

Last Month1 =
VAR sub_e =
    CALCULATE ( [Last Month], FILTER ( ALL ( transaccion ), [tipo] = "d" ) )
        - CALCULATE ( [Last Month], FILTER ( ALL ( transaccion ), [tipo] = "c" ) )
VAR sub_f =
    CALCULATE ( [Last Month], FILTER ( ALL ( transaccion ), [tipo] = "a" ) )
        + sub_e
RETURN
    SWITCH ( MAX ( [tipo] ), "e", sub_e, "f", sub_f, [Last Month] )

11.png

Last MTD1 =
VAR sub_e =
    CALCULATE ( [Last MTD], FILTER ( ALL ( transaccion ), [tipo] = "d" ) )
        - CALCULATE ( [Last MTD], FILTER ( ALL ( transaccion ), [tipo] = "c" ) )
VAR sub_f =
    CALCULATE ( [Last MTD], FILTER ( ALL ( transaccion ), [tipo] = "a" ) )
        + sub_e
RETURN
    SWITCH ( MAX ( [tipo] ), "e", sub_e, "f", sub_f, [Last MTD] )


MTD1 =
VAR sub_e =
    CALCULATE ( [MTD], FILTER ( ALL ( transaccion ), [tipo] = "d" ) )
        - CALCULATE ( [MTD], FILTER ( ALL ( transaccion ), [tipo] = "c" ) )
VAR sub_f =
    CALCULATE ( [MTD], FILTER ( ALL ( transaccion ), [tipo] = "a" ) )
        + sub_e
RETURN
    SWITCH ( MAX ( [tipo] ), "e", sub_e, "f", sub_f, [MTD] )

 

Best Regards

Maggie

 

 

Hi @v-juanli-msft when i use a Filter with a slicer, the new measures doesnt work, they get me the TOTAL. I think it is because the

 FILTER ( ALL ( transaccion ),)

 

Regards

Carlos CQ

Hi @carloscabreraq

To let this measure work with slicer, change "ALL"to "ALLSELECTED".

 

Best Regrads

Maggie

Thanks @v-juanli-msft

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

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

August 2025 community update carousel

Fabric Community Update - August 2025

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