Google-calendar – How to schedule a Google Calendar event for recurring twice-monthly payday

google-calendar

How can I schedule a Google Calendar event for recurring twice-monthly payday, which recurs monthly on day 15 or the last day of the month OR if either is on a weekend then the prior weekday?

I assume I'll need to manually create an iCal file externally then import it into Google Calendar via Settings ► Calendars ► Import Calendar.

Ideally it would somehow also know about US federal holidays and consider those to be like a weekend day, but I'll accept an answer that ignores this complicated requirement.

P.S. I've seen similar questions like How to make a task repeat on the last day of each month in Google Calendar? but never one just like mine.

Best Answer

I found the answer at http://code.rawlinson.us/2016/04/google-calendar-recurring-events-on-the-middle-and-last-day-of-every-month.html

Create a file called payday_mid-month.ical containing:

BEGIN:VCALENDAR
BEGIN:VEVENT
DTSTART:20160315T190000Z
DTEND:20120415T191500Z
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: Deposit Paycheck
END:VEVENT
END:VCALENDAR

Create a file called payday_end-of-month.ical containing:

BEGIN:VCALENDAR
BEGIN:VEVENT
DTSTART:20160331T190000Z
DTEND:20120430T191500Z
RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-1;WKST=MO;
SUMMARY: Deposit Paycheck
END:VEVENT
END:VCALENDAR

Import each of them at https://calendar.google.com/calendar/u/0/r/settings/export

Contrary to what others had reported, I was then able to edit those recurring events in Google Calendar, and my edits flowed through to all instances of that event. (I was able to edit the title, description, calendar, time of day, notifications, etc, as long as I was willing to leave the time zone as UTC.)