Get certified for free when you join Fabric Data Days 2026 and dive into Fabric, Power BI, SQL, AI, and other essential data skills.
Join nowJuly 7 - July 17 | Round 2 of the Power BI Dataviz World Championships. Don't miss your chance! Learn more
I have got Calendar table (first one below, only first 3 rows as example) created in DAX.
Calendar =
ADDCOLUMNS(
CALENDARAUTO(),
"Year", YEAR ( [Date] ),
"Month", FORMAT ( [Date], "mmmm" ),
"Month Number", MONTH( [Date] )
)
and Maturity table (second one). They are related by Date/SampleDate (1-*).
I use a measure AAA to populate dates when there were some test results with associated Code. To this point it's ok.
AAA = IF(SELECTEDVALUE('Calendar'[Date]) = SELECTEDVALUE('Maturity'[SampleDate]), SELECTEDVALUE('Maturity'[Code]),"")
Goal
I have a table below, values are AAA measure as above. How to fill the days when there were no results in a way that it uses the Code from the previous test, until a new test is done? The ideal results shown in the picture below in red.
Attempts
AAA =
VAR SelectedDate = SELECTEDVALUE('Calendar'[Date])
VAR SampleCode =
CALCULATE(
SELECTEDVALUE('Maturity'[Code]),
ALLEXCEPT('Maturity', 'Maturity'[SampleDate], 'Maturity'[Grower], 'Maturity'[Orchard], 'Maturity'[ManagementArea]),
'Maturity'[SampleDate] <= SelectedDate,
'Maturity'[Code] <> BLANK()
)
VAR PreviousSample =
CALCULATE(
SELECTEDVALUE('Maturity'[SampleDate]),
ALLEXCEPT('Maturity', 'Maturity'[Grower], 'Maturity'[Orchard], 'Maturity'[ManagementArea]),
'Maturity'[SampleDate] < SelectedDate,
'Maturity'[Code] <> BLANK()
)
VAR NextSample =
CALCULATE(
SELECTEDVALUE('Maturity'[SampleDate]),
ALLEXCEPT('Maturity', 'Maturity'[Grower], 'Maturity'[Orchard], 'Maturity'[ManagementArea]),
'Maturity'[SampleDate] > SelectedDate,
'Maturity'[Code] <> BLANK()
)
RETURN
IF(
SampleCode <> BLANK(),
SampleCode,
IF(
SelectedDate > PreviousSample && SelectedDate < NextSample,
CALCULATE(
SELECTEDVALUE('Maturity'[Code]),
ALLEXCEPT('Maturity', 'Maturity'[SampleDate], 'Maturity'[Grower], 'Maturity'[Orchard], 'Maturity'[ManagementArea]),
'Maturity'[SampleDate] = PreviousSample,
'Maturity'[Code] <> BLANK()
),
BLANK()
)
)
To report on things that are not there you need to use disconnected tables and/or crossjoins
Join us in Barcelona for FabCon and SQLCon, the Fabric, Power BI, SQL, and AI community event. Save €200 with code FABCMTY200.
Join Fabric Data Days 2026: 60 days of free live/on-demand sessions, challenges, study groups, and certification opportunities.
| User | Count |
|---|---|
| 24 | |
| 24 | |
| 17 | |
| 14 | |
| 13 |
| User | Count |
|---|---|
| 63 | |
| 41 | |
| 39 | |
| 39 | |
| 39 |