Showing results for 
Search instead for 
Did you mean: 
New Member

Sending reminder email on the last (working) day of the month?

I'm new to Power Automate, and trying to set up what should be a simple flow. I need to send two reminder emails to managers to check and approve timesheets.


The first is every other Friday, the last day of a pay period. This was easy to create using a recurrence and mail.


The second is on the last working day of the month, for the close of the fiscal period. Timesheet approvals done outside of a fiscal period cause havoc in our ERP system. This is where I'm running into problems. While tools like Outlook calendar can do recurrences on the last day of the month, this isn't available in the PA recurrence feature.


I've searched and found references to code that determines the correct day, but because I'm new at this, I'm not even sure how or where to use that code. Any help with a step-by-step would be greatly appreciated. Thanks!

Super User
Super User



After daily recurrence, use this condition-



if last and previous last day of month is saturday and sunday then it is not last working day.






This sort of worked. The problem is the email will be sent every day on the 27th, 28th, 29th, 30th and 31st as long as those days aren't a Saturday or Sunday. I only want it to send once, on the last workday of the month.


So... if the 31st is a Sunday, the email would send on the 29th, but not the 28th or 27th.


I found some exceptions in this , will post you complete solution after testing.




Kudo Collector
Kudo Collector


Do you need to take into consideration holidays?



I hadn't thought of that. Yes, I suppose I should. But at this point, I'll take the flow with or without holidays as long as I can get the email sent on the last working day of the month otherwise.



Here is your solution. i have considered all permutation and combination.








My Logic- for 31 days month like Jan,March etc if 31st is not saturday and sunday then it is last working day. And if 29 & 30 of 31 days month falls on friday then it is last working day. Same way i did for 30 days month and feb as well.










@Hardesh15  Let's take it from another side. I found this solution as inspiration and decided to put it into the Power Automate frames. 


@EJack , So in short, let's take the 1st day of the next month and count it backward, day by day until you get a working day (dayOfWeek(variables('Date') is not equal 0 or 6). Here is the explanation of the dayOfWeek.

And if you finally get such a day check if this is today. 

Simple, isn't it? 😏


I thought so, but end up with a pretty complex flow. 

Here are some pictures. If you need details - let me know. 




The Date variable is initialized with this formula:




 The Date-1:




And DayofWeek:




 Condition at "Do Until" loop is advanced:


@or(not(equals(variables('DayOfWeek'), 0)),not(equals(variables('DayOfWeek'), 6)))


And the rest should be pretty straightforward. 


Let me know if this works? I have tested a bit with November, as the 1st of November is Sunday, and it looks working. But I might do wrong conditions, so better test different scenarios and don't take it for granted.  


Thanks! There's a lot to this. I'm also wondering what happens when you get to leap year with Feb having 29 days.



Thank you as well! I think I like the idea of counting backwards from the first day of the next month. That would seem to work regardless of what month it is an if it was a leap year or not. I haven't had a chance to play with this yet, as it takes my non-programmer brain a little while to wrap my head around it.


Is your example sharable? If you have more details on how to recreate those frames, I won't say no. 🙂 

Hi @EJack 

I have built, checked, and published the flow. You can download and use the flow from here

Happy flow! 🙂

Wonderful job Michał, just used it!

Frequent Visitor

Came across this post while looking for a solution to the same problem...


Shouldn't the code below work with the exception of public holidays... 


...If today is a weekday and tomorrow is the first day of next month or

             if today is friday and the first day of next month is the day after tomorrow (sunday) or the next (monday)....


Note: for me dayofWeek returns (1...7) for (Monday...Sunday)...




Helpful resources

Microsoft 365 Conference – December 6-8, 2022

Microsoft 365 Conference – December 6-8, 2022

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Difinity Conference 2022

Difinity Conference 2022

Register today for two amazing days of learning, featuring intensive learning sessions across multiple tracks, led by engaging and dynamic experts.

European SharePoint Conference

European SharePoint Conference

The European SharePoint Conference returns live and in-person November 28-December 1 with 4 Microsoft Keynotes, 9 Tutorials, and 120 Sessions.

Users online (3,251)