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

Preparing for a certification exam? Ask exam experts all your questions on May 15th. Register now.

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
PBIApril_Carousel

Power BI Monthly Update - April 2025

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

Notebook Gallery Carousel1

NEW! Community Notebooks Gallery

Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.

April2025 Carousel

Fabric Community Update - April 2025

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