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

Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers. Get Fabric certified for FREE! Learn more

Reply
NewbieJono
Post Partisan
Post Partisan

Filter - Previous working day

i have this code to identify "today". is there a method i could use to also identify previous working day, ihave a coloumn that indicates if its a working day or not and returns 1,0

 

WorkingDay = if(WEEKDAY([Date],2) >=6,0,1)

Is Today =
var _max = maxx(filter('Date', 'Date'[Date] <=today() && [WorkingDay] =1),'Date'[Date])
return
Switch(True(),
[Date] = _max, "Today",
Format([Date], "DD/MM/YYYY"))

1 ACCEPTED SOLUTION
Vera_33
Resident Rockstar
Resident Rockstar

Hi @NewbieJono 

 

So you are doing 2 Calculated columns? your "today" is not actually today, but working day...you want something like this?

 

Vera_33_0-1621582536014.png

test = 
var workingDays = filter('Date', 'Date'[Date] <=today() && [WorkingDay] =1)
var today = MAXX(workingDays,[Date])
var previous = MAXX(FILTER(workingDays,[Date]<today),[Date])
return
SWITCH(TRUE(),
[Date]=today,"Today",
[Date] = previous, "Previous Working Day",
Format([Date], "DD/MM/YYYY"))

 

View solution in original post

5 REPLIES 5
NewbieJono
Post Partisan
Post Partisan

thanks for your time both

Vera_33
Resident Rockstar
Resident Rockstar

Hi @NewbieJono 

 

So you are doing 2 Calculated columns? your "today" is not actually today, but working day...you want something like this?

 

Vera_33_0-1621582536014.png

test = 
var workingDays = filter('Date', 'Date'[Date] <=today() && [WorkingDay] =1)
var today = MAXX(workingDays,[Date])
var previous = MAXX(FILTER(workingDays,[Date]<today),[Date])
return
SWITCH(TRUE(),
[Date]=today,"Today",
[Date] = previous, "Previous Working Day",
Format([Date], "DD/MM/YYYY"))

 

I would like to calculate two/three/four previous working days, how do I do ?

Hi @juliabot 

 

Try it

test = 
var workingDays = filter('Date', 'Date'[Date] <=today() && [WorkingDay] =1)
var today = MAXX(workingDays,[Date])
var previous = MAXX(FILTER(workingDays,[Date]<today),[Date])
var pre2day = MAXX(FILTER(workingDays,[Date]< previous),[Date])
return
SWITCH(TRUE(),
[Date]=today,"Today",
[Date] = previous, "Previous Working Day",
[Date] = pre2day, "Previous 2 Working Day",
Format([Date], "DD/MM/YYYY"))

 

amitchandak
Super User
Super User

@NewbieJono ,

 

Last working  = maxx(filter('Date', 'Date'[Date] <today() && [WorkingDay] =1),'Date'[Date])

 

Also refer my blog

Traveling Across Workdays - What is next/previous Working day
https://community.powerbi.com/t5/Community-Blog/Travelling-Across-Workdays-Decoding-Date-and-Calenda...

Full Power BI Video 20 Hours YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube

Helpful resources

Announcements
March PBI video - carousel

Power BI Monthly Update - March 2025

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

March2025 Carousel

Fabric Community Update - March 2025

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

Top Solution Authors