/calendar/community?hl=en
/calendar/community?hl=en
4/4/13
Original Poster
Kymberley Bradshaw

Monthly repeating events - weekdays only


Hi guys,

Does anyone know how I would create a repeating event for the 6th of every month, weekdays only, in Google Calendar (on a PC)?

This has been driving me nuts!
Community content may not be verified or up-to-date. Learn more.
Recommended Answer
Was this answer helpful?
How can we improve it?
All Replies (7)
4/4/13
Original Poster
Kymberley Bradshaw
I should elucidate a little:

I'm trying to set up reminders for a payroll service to bring it in line with the new Real Time Information rules from Revenue & Customs. The date on the payslip must match EXACTLY with the date the payment is made, and it cannot be a weekend, so the date has to revert to the closest weekday before in those situations.

Example: One company wants to make payments on the 6th of every month. So in April this would be on Friday the 5th, May & June the 6th falls on weekdays so is okay, July will be Friday 5th,  Aug-Sep with be the 6th, Oct will be Friday 4th, Nov-Mar all the sixth. (I then need to do the same for companies wanting to pay on the 10th, 12th, 15th, 20th, 30th and 31st of each month)

Whew! What a pain the taxman is. 

I have a feeling I'm going to have to set individual dates for this. Any other ideas?
DLW
4/4/13
DLW
There's nothing built into Calendar that will handle this. It might ease your pain a little to use a spreadsheet to calculate the correct date, then import the events as a csv file. I made a quick spreadsheet that shows the formulae. It's at https://docs.google.com/spreadsheet/ccc?key=0ApositB2jxdkdE92b1NXeGFldWxxLU5ETzdySUthdlE&usp=sharing. YOu can copy down for additional dates.

Links to create a CSV are below. 

4/5/13
Original Poster
Kymberley Bradshaw
It's so nearly there thanks to you, but I just need to adjust the formula so that when the date falls on a weekend, the 'nearest weekday' is the 'nearest Friday'. Any advice?

 
DLW
4/5/13
DLW
I changed it to give the last weekday if the 6th is on a weekend. All the formula does is check to see if it's day one or day 7 (Sunday or Saturday) and subtract 2 or 1 from the date, respectively.

Glad it helped!
4/5/13
Original Poster
Kymberley Bradshaw
Oops - I was up real late last night working on this and I think my brain cell must have packed up somewhere around midnight! ;)

D, your help was invaluable, and, based off your excellent Google Sheet, I have now imported swathes of dates into the calendar to make my life a lot easier. You've cut my workload significantly - I'd buy you a bottle of wine if you were UK based.

Thank you, mister Webb!
Loren Brockway
1/9/15
Loren Brockway
Actually, I think I may have figured out an iCal rule for you that worked. I realize this is an old post but perhaps I can share for anyone like me who is trying to figure this out, now. I was trying to figure out the closest weekday to the 15th (where if Saturday is the 15th, it reverts to Friday and if Sunday is the 15th it reverts to Monday). So, I just stacked a few rules together to make it work. What these rule rely on is that any given month couldn't have multiple dates. So, you use the SETPOS rule to deal with Friday's before the 6th: If Saturday is the 6th, then Friday will be the 5th. If Sunday is the 6th, then Friday will be the 4th. So, you want the first of any Friday that may happen on a 4th or 5th. Plus any weekdays that are the 6th are fine. So, you need two RRULE commands in the code. I needed three for my setup and didn't use the SETPOS:

This situation:
BEGIN:VCALENDAR
BEGIN:VEVENT
DTSTART:20150101
DTEND:20150101
RRULE:FREQ=MONTHLY;BYDAY=FR;BYMONTHDAY=4,5;SETPOS=1
RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYMONTHDAY=6
SUMMARY:Event Name HERE
END:VEVENT
END:VCALENDAR

My situation:
BEGIN:VCALENDAR
BEGIN:VEVENT
DTSTART:20150101
DTEND:20150101
RRULE:FREQ=MONTHLY;BYDAY=FR;BYMONTHDAY=14
RRULE:FREQ=MONTHLY;BYDAY=MO;BYMONTHDAY=16
RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYMONTHDAY=15
SUMMARY:Event Name HERE
END:VEVENT
END:VCALENDAR



Loren Brockway
1/9/15
Loren Brockway
One issue I've run into with this, though. While this appears to function properly in Google Calendars, it is not supported by Outlook for some reason (at least 2003). While Outlook seems to accept the combination of BYMONTHDAY and SETPOS, it does not like combining BYMONTHDAY with BYDAY.
So, if anyone has suggestions about how to make this technique work across platforms, that would be great!
 
This question is locked and replying has been disabled. Still have questions? Ask the Help Community.

Badges

Some community members might have badges that indicate their identity or level of participation in a community.

 
Google Employee — Google product team members and community managers
 
Community Specialist — Google partners who help ensure the quality of community content
 
Platinum Product Expert — Community members with advanced product knowledge who help other Google users and Product Experts
 
Gold Product Expert — Community members with in-depth product knowledge who help other Google users by answering questions
 
Silver Product Expert — Community members with intermediate product knowledge who help other Google users by answering questions
 
Product Expert Alumni — Former Product Experts who are no longer members of the program
Community content may not be verified or up-to-date. Learn more.

Levels

Member levels indicate a user's level of participation in a forum. The greater the participation, the higher the level. Everyone starts at level 1 and can rise to level 10. These activities can increase your level in a forum:

  • Post an answer.
  • Having your answer selected as the best answer.
  • Having your post rated as helpful.
  • Vote up a post.
  • Correctly mark a topic or post as abuse.

Having a post marked and removed as abuse will slow a user's advance in levels.

View profile in forum?

To view this member's profile, you need to leave the current Help page.

Report abuse in forum?

This comment originated in the Google Product Forum. To report abuse, you need to leave the current Help page.

Reply in forum?

This comment originated in the Google Product Forum. To reply, you need to leave the current Help page.