Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! It's time to submit your entry. Live now!
Hello Community,
I have a following Matrix Visual in Power BI, and I want to add two rows at bottom of it. It should be the difference between 2022/2023 and 2023/2024.
| Year | NOV | DEC | JAN | FEB | MAR | APR | MAY | JUN | JUL | AUG | SEP | OCT |
| 2021/2022 | 10 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 15 | 16 | 19 |
| 2022/2023 | 11 | 13 | 15 | 21 | 22 | 19 | 11 | 16 | 18 | 15 | 19 | 20 |
| 2023/2024 | 8 | 14 | 19 | 22 | 24 | 18 | 14 | 10 | 20 | 18 | 23 | 22 |
After adding the two rows the Visual Matrix should look like as follows.
| Year | NOV | DEC | JAN | FEB | MAR | APR | MAY | JUN | JUL | AUG | SEP | OCT |
| 2021/2022 | 10 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 15 | 16 | 19 |
| 2022/2023 | 11 | 13 | 15 | 21 | 22 | 19 | 11 | 16 | 18 | 15 | 19 | 20 |
| 2023/2024 | 8 | 14 | 19 | 22 | 24 | 18 | 14 | 10 | 20 | 18 | 23 | 22 |
| Diff from last year | -3 | 1 | 4 | 1 | 2 | -1 | 3 | -6 | 2 | 3 | 4 | 2 |
| % Diff | -27% | 8% | 27% | 5% | 9% | -5% | 27% | -38% | 11% | 20% | 21% | 10% |
I'll appreciate any help in this regard.
Thank you!
Rashid
Solved! Go to Solution.
Hi @rashidanwar ,
Please follow these steps:
1.Use Power Query to create a blank query and perform an "append" operation
let
Source = Table,
selectColumn = Table.SelectColumns(Source,{"Month"}),
distinct = Table.Distinct(selectColumn),
#"Added Custom" = Table.AddColumn(distinct, "Year", each "Diff from last year")
in
#"Added Custom"
2.Use the following DAX expression to create a measure
MEASURE =
VAR _row =
SELECTEDVALUE ( Append1[Year] )
VAR _column =
SELECTEDVALUE ( Append1[Month] )
VAR _difference =
CALCULATE ( SUM ( Append1[Value] ), 'Append1'[Year] = "2023/2024" )
- CALCULATE ( SUM ( Append1[Value] ), 'Append1'[Year] = "2022/2023" )
VAR _result =
IF (
_row = "Diff from last year",
FORMAT ( _difference, "0" ),
IF (
ISBLANK ( _row ),
FORMAT (
DIVIDE (
_difference,
CALCULATE ( SUM ( Append1[Value] ), 'Append1'[Year] = "2022/2023" )
),
"0%"
),
FORMAT ( SUM ( 'Append1'[Value] ), "0" )
)
)
RETURN
_result
3.Final output
Best Regards,
Wenbin Zhou
I know this is late. But you can have a short look on my solution as well.
Assuming your dataset look like below
then follow below steps
Step 1 :
create a simple disconnected calculated table by DAX .
ResultTable =
VAR _1 =
ROW( "Year","Diff from last Year" )
VAR _2 =
ROW( "Year","Diff%" )
VAR _CombTable =
UNION(
VALUES( Source[Year] ),
_1,_2
)
VAR _Result =
ADDCOLUMNS(
_CombTable, "MaxYear",MAX( Source[Year] )
)
RETURN
_ResultStep 2 : Create a consolidated DAX for showing value. Below code. (Assuming you have DAX code for Diff from Last year and Diff %)
Show Value =
VAR _ValueBase =
CALCULATE(
SUM( Source[Value] ),
TREATAS(
VALUES( 'ResultTable'[Year] ), Source[Year]
) )
VAR _Result =
IF(
MAX( ResultTable[Year] ) = "Diff from last Year",
CALCULATE(
[Diff from Last Year],
TREATAS(
VALUES( 'ResultTable'[MaxYear] )
,Source[Year]
)
) ,
IF(
MAX( ResultTable[Year] ) = "Diff%",
CALCULATE(
[Diff %],
TREATAS(
VALUES( 'ResultTable'[MaxYear] )
,Source[Year]
)
),
_ValueBase
) )
RETURN
_Result
Step 3 : For formatting, go ti Dynamic formatting and paste below DAX
IF(
MAX( ResultTable[Year] ) = "Diff%",
"0%","#,##0"
)
Below screenshot
you can find the pbix file in below link
Hope this will help
Regards,
sanalytics
I know this is late. But you can have a short look on my solution as well.
Assuming your dataset look like below
then follow below steps
Step 1 :
create a simple disconnected calculated table by DAX .
ResultTable =
VAR _1 =
ROW( "Year","Diff from last Year" )
VAR _2 =
ROW( "Year","Diff%" )
VAR _CombTable =
UNION(
VALUES( Source[Year] ),
_1,_2
)
VAR _Result =
ADDCOLUMNS(
_CombTable, "MaxYear",MAX( Source[Year] )
)
RETURN
_ResultStep 2 : Create a consolidated DAX for showing value. Below code. (Assuming you have DAX code for Diff from Last year and Diff %)
Show Value =
VAR _ValueBase =
CALCULATE(
SUM( Source[Value] ),
TREATAS(
VALUES( 'ResultTable'[Year] ), Source[Year]
) )
VAR _Result =
IF(
MAX( ResultTable[Year] ) = "Diff from last Year",
CALCULATE(
[Diff from Last Year],
TREATAS(
VALUES( 'ResultTable'[MaxYear] )
,Source[Year]
)
) ,
IF(
MAX( ResultTable[Year] ) = "Diff%",
CALCULATE(
[Diff %],
TREATAS(
VALUES( 'ResultTable'[MaxYear] )
,Source[Year]
)
),
_ValueBase
) )
RETURN
_Result
Step 3 : For formatting, go ti Dynamic formatting and paste below DAX
IF(
MAX( ResultTable[Year] ) = "Diff%",
"0%","#,##0"
)
Below screenshot
you can find the pbix file in below link
Hope this will help
Regards,
sanalytics
Hi @rashidanwar ,
Please follow these steps:
1.Use Power Query to create a blank query and perform an "append" operation
let
Source = Table,
selectColumn = Table.SelectColumns(Source,{"Month"}),
distinct = Table.Distinct(selectColumn),
#"Added Custom" = Table.AddColumn(distinct, "Year", each "Diff from last year")
in
#"Added Custom"
2.Use the following DAX expression to create a measure
MEASURE =
VAR _row =
SELECTEDVALUE ( Append1[Year] )
VAR _column =
SELECTEDVALUE ( Append1[Month] )
VAR _difference =
CALCULATE ( SUM ( Append1[Value] ), 'Append1'[Year] = "2023/2024" )
- CALCULATE ( SUM ( Append1[Value] ), 'Append1'[Year] = "2022/2023" )
VAR _result =
IF (
_row = "Diff from last year",
FORMAT ( _difference, "0" ),
IF (
ISBLANK ( _row ),
FORMAT (
DIVIDE (
_difference,
CALCULATE ( SUM ( Append1[Value] ), 'Append1'[Year] = "2022/2023" )
),
"0%"
),
FORMAT ( SUM ( 'Append1'[Value] ), "0" )
)
)
RETURN
_result
3.Final output
Best Regards,
Wenbin Zhou
Hi @rashidanwar
You can achieve it with the calculated groups.
Please refer to the linked video :
https://www.youtube.com/watch?v=gNLIaBMXr40
If this post helps, then please consider Accepting it as the solution to help the other members find it more quickly.
The Power BI Data Visualization World Championships is back! It's time to submit your entry.
Check out the January 2026 Power BI update to learn about new features.
| User | Count |
|---|---|
| 60 | |
| 49 | |
| 30 | |
| 25 | |
| 23 |
| User | Count |
|---|---|
| 131 | |
| 103 | |
| 58 | |
| 39 | |
| 31 |