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!Learn from the best! Meet the four finalists headed to the FINALS of the Power BI Dataviz World Championships! Register now
Hi.
I'm trying to create a calculated column in a table to give a yes/no (or 1/0) to show if the difference between 2 date/time fields is <= 24 hours.
I need to exclude weekends and bank holidays - I have a dimdate table with weekends and bank holidays flagged.
A working day is 24 hours.
I'm having problems writing the dax to do this due to the time element.
This is an example of fields and output:
Any ideas on how to calcuate the 'In timescale' column? Many thanks
Solved! Go to Solution.
Hi @Florie
Great question! Calculating a “within timescale” column that excludes weekends and bank holidays (using a dimdate table) is a classic DAX challenge. Here’s a step-by-step method:
You’ll need to sum hours on valid working days between [Start] and [Completion], ignoring weekends and bank holidays.
Here’s a sample DAX calculated column for your table (let’s call it [In Timescale]):
In Timescale =
VAR StartDateTime = [Start]
VAR EndDateTime = [Completion]
VAR DatesBetween =
FILTER (
'DimDate',
'DimDate'[Date] >= DATEVALUE(StartDateTime)
&& 'DimDate'[Date] <= DATEVALUE(EndDateTime)
&& 'DimDate'[IsWeekend] = FALSE()
&& 'DimDate'[IsBankHoliday] = FALSE()
)
VAR WorkingHours =
SUMX (
DatesBetween,
VAR ThisDate =
'DimDate'[Date]
VAR StartHour =
IF (
ThisDate = DATEVALUE(StartDateTime),
HOUR(StartDateTime) + MINUTE(StartDateTime)/60,
0
)
VAR EndHour =
IF (
ThisDate = DATEVALUE(EndDateTime),
HOUR(EndDateTime) + MINUTE(EndDateTime)/60,
24
)
RETURN
EndHour - StartHour
)
RETURN IF(WorkingHours <= 24, "Yes (or 1)", "No (or 0)")Let me know if you need the DAX for a specific edge case or have a different working hours definition!
translation and formatting supported by AI
Thank you!
Hi @Florie
Great question! Calculating a “within timescale” column that excludes weekends and bank holidays (using a dimdate table) is a classic DAX challenge. Here’s a step-by-step method:
You’ll need to sum hours on valid working days between [Start] and [Completion], ignoring weekends and bank holidays.
Here’s a sample DAX calculated column for your table (let’s call it [In Timescale]):
In Timescale =
VAR StartDateTime = [Start]
VAR EndDateTime = [Completion]
VAR DatesBetween =
FILTER (
'DimDate',
'DimDate'[Date] >= DATEVALUE(StartDateTime)
&& 'DimDate'[Date] <= DATEVALUE(EndDateTime)
&& 'DimDate'[IsWeekend] = FALSE()
&& 'DimDate'[IsBankHoliday] = FALSE()
)
VAR WorkingHours =
SUMX (
DatesBetween,
VAR ThisDate =
'DimDate'[Date]
VAR StartHour =
IF (
ThisDate = DATEVALUE(StartDateTime),
HOUR(StartDateTime) + MINUTE(StartDateTime)/60,
0
)
VAR EndHour =
IF (
ThisDate = DATEVALUE(EndDateTime),
HOUR(EndDateTime) + MINUTE(EndDateTime)/60,
24
)
RETURN
EndHour - StartHour
)
RETURN IF(WorkingHours <= 24, "Yes (or 1)", "No (or 0)")Let me know if you need the DAX for a specific edge case or have a different working hours definition!
translation and formatting supported by AI
@Florie Create a calculated column to determine if the difference between Start and Completion is within 24 hours, excluding weekends and bank holidays.
dax
InTimescale =
VAR StartDateTime = 'YourTable'[Start]
VAR CompletionDateTime = 'YourTable'[Completion]
VAR StartDate = DATE(YEAR(StartDateTime), MONTH(StartDateTime), DAY(StartDateTime))
VAR CompletionDate = DATE(YEAR(CompletionDateTime), MONTH(CompletionDateTime), DAY(CompletionDateTime))
VAR WorkingDays =
CALCULATE(
COUNTROWS('DimDate'),
'DimDate'[Date] >= StartDate,
'DimDate'[Date] <= CompletionDate,
'DimDate'[IsWorkingDay] = TRUE()
)
VAR TotalHours =
IF(
WorkingDays = 1,
DATEDIFF(StartDateTime, CompletionDateTime, HOUR),
(WorkingDays - 2) * 24 +
(24 - HOUR(StartDateTime) - MINUTE(StartDateTime) / 60) +
HOUR(CompletionDateTime) + MINUTE(CompletionDateTime) / 60
)
RETURN
IF(TotalHours <= 24, 1, 0)
Proud to be a Super User! |
|
Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.
Check out the February 2026 Power BI update to learn about new features.
| User | Count |
|---|---|
| 61 | |
| 54 | |
| 40 | |
| 17 | |
| 14 |
| User | Count |
|---|---|
| 96 | |
| 83 | |
| 36 | |
| 30 | |
| 25 |