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

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.

Reply
ZR-PBIFirstFirs
Frequent Visitor

Replace empty values in a matrix with the previous non blank value

Hello ,

I have this matrix that shows the total number of differenet counts , I need to replace empty values with the previous total as shown in the screens : 

ZRPBIFirstFirs_0-1684927354175.png

 

ZRPBIFirstFirs_0-1684927674880.png

 

 

Thank you in advance

 

 

1 ACCEPTED SOLUTION

Thanks @tamerj1  for the answer. It unfortnathly didn't show the expected result .

I finally created Date.WeekOfYear column and the totals were grouped accordinaly , so no emty values were left

View solution in original post

13 REPLIES 13
tamerj1
Super User
Super User

@ZR-PBIFirstFirs 

This dhould work. You csn replace the outer MAXX with SUMX to sum the rows at total level 

Measure1 =
VAR SelectedTable =
ALLSELECTED ( 'kpi TotalErrorHistory' )
VAR CurrentDate =
CALCULATE (
MAX ( 'kpi TotalErrorHistory'[Date] ),
ALL ( 'kpi TotalErrorHistory'[KPIDescription] )
)
RETURN
MAXX (
VALUES ( 'kpi TotalErrorHistory'[KPIDescription] ),
MAXX (
TOPN (
1,
FILTER (
SelectedTable,
VAR KPIDesc = 'kpi TotalErrorHistory'[KPIDescription]
RETURN
'kpi TotalErrorHistory'[Date] <= CurrentDate
&& 'kpi TotalErrorHistory'[KPIDescription] = KPIDesc
),
'kpi TotalErrorHistory'[Date]
),
'kpi TotalErrorHistory'[TotalNumber]
)
)

@tamerj1 

Unfortunathly still the same result as in the previous screen

@ZR-PBIFirstFirs 

Would you please place tge following measure in the matrix values and let me know what result do you get?

CALCULATE (
MAX ( 'kpi TotalErrorHistory'[Date] ),
ALL ( 'kpi TotalErrorHistory'[KPIDescription] )
)

@tamerj1 This measure shows the date next to the values that are not empty

@ZR-PBIFirstFirs 

Apologies for the late response. I got engaged with something else. 

This has to be a dimension table. Create a new calculated table

Dates = ALLNOBLANKROW ( 'kpi TotalErrorHistory'[Date] )

 

create the relationship between the two tables. Place the new dimension date column in the columns of the matrix instead of tge original one. Tyen try the following measure in the values. Remember you can change the MAXX to SUMX based on your requirement. 

 

Measure1 =
VAR SelectedTable =
ALLSELECTED ( 'kpi TotalErrorHistory' )
VAR CurrentDate =
MAX ( 'Dates'[Date] )
RETURN
MAXX (
VALUES ( 'kpi TotalErrorHistory'[KPIDescription] ),
SUMX (
TOPN (
1,
FILTER (
SelectedTable,
VAR KPIDesc = 'kpi TotalErrorHistory'[KPIDescription]
RETURN
'kpi TotalErrorHistory'[Date] <= CurrentDate
&& 'kpi TotalErrorHistory'[KPIDescription] = KPIDesc
),
'kpi TotalErrorHistory'[Date]
),
'kpi TotalErrorHistory'[TotalNumber]
)
)

Thanks @tamerj1  for the answer. It unfortnathly didn't show the expected result .

I finally created Date.WeekOfYear column and the totals were grouped accordinaly , so no emty values were left

ZR-PBIFirstFirs
Frequent Visitor

For info this what the data looks like : 

ZRPBIFirstFirs_0-1684929310614.png

 

ZR-PBIFirstFirs
Frequent Visitor

Hello @tamerj1 , Thank you for the answer ,However the measure still shows the  same results as what I had before ( for your info I replaced Mesure with the max of the total number I had in the column)

@ZR-PBIFirstFirs 

Would you please place the dax that you have used. 

@tamerj1 

Measure = MAXX (
TOPN (
1,
FILTER (
ADDCOLUMNS (
FILTER ( ALLSELECTED ( 'kpi TotalErrorHistory'[Date]), 'kpi TotalErrorHistory'[Date]<= MAX ( 'kpi TotalErrorHistory'[Date] ) ),
"@Value",
VAR CurrentDate = 'kpi TotalErrorHistory'[Date]
RETURN
CALCULATE ( [Measure 2], 'kpi TotalErrorHistory'[Date] = CurrentDate )
),
[@Value] <> BLANK ()
),
'kpi TotalErrorHistory'[Date]
),
[@Value]
)

@ZR-PBIFirstFirs 

Please try

Measure2 =
MAXX (
TOPN (
1,
FILTER (
ALLSELECTED ( 'kpi TotalErrorHistory' ),
'kpi TotalErrorHistory'[Date] <= MAX ( 'kpi TotalErrorHistory'[Date] )
),
'kpi TotalErrorHistory'[Date]
),
'kpi TotalErrorHistory'[TotalNumber]
)

@tamerj1 Thank you for the suggestion, but this formula replaces the existing totals by max : 

ZRPBIFirstFirs_0-1684933062771.png

 

tamerj1
Super User
Super User

Hi @ZR-PBIFirstFirs 

please try

NewMeasure =
MAXX (
TOPN (
1,
FILTER (
ADDCOLUMNS (
FILTER ( ALLSELECTED ( 'Table'[Date] ), 'Table'[Date] <= MAX ( 'Table'[Date] ) ),
"@Value",
VAR CurrentDate = 'Table'[Date]
RETURN
CALCULATE ( [Measure], 'Table'[Date] = CurrentDate )
),
[@Value] <> BLANK ()
),
'Table'[Date]
),
[@Value]
)

Helpful resources

Announcements
FabCon Global Hackathon Carousel

FabCon Global Hackathon

Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

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

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.