I'm trying to sync my Google sheet to my Google Calendar. However, I keep running into errors. I've tried a myriad of scripts, but none seem to work. I got one to work, but every time I ran the script, it would create new events

Example: Ran script 8/1 and 15 events added to Google Calendar. Ran script again on 8/1 and 15 events re-added to Google Calendar. Total of 30 events on Google Calendar (15 duplicates). Every time I tested the script, it would add 15 more events. I want to avoid this.

I found some scripts that would delete all events on your Google Calendar when you ran them, then added the events. However, they never seemed to work for me. I've tried so many diff scripts, I can't remember which ones worked (but created duplicates).

Anyone know how to get this to work? I don't need to sync from cal to sheets; only from sheets to cal.


  • Sync my Google Spreadsheet to Google Calendar automatically (onEdit or onChange)
  • Remove any duplicates (only have 15 events)
  • Full Day Events: Date (column E) + Title (column F) --no other info needed
  • Events do not need time, location, etc.
  • Don't want to create any extra rows/columns
  • Don't want to create a menu/buttons (I want the events to sync automatically onEdit/onChange)
  • Don't need to send email invites

Test sheet: sample here

Test calendar: sample here

With the current script, I am stuck on line 308 var idRange = range.offset(0, idIdx, data.length, 1);

Error: The coordinates or dimensions of the range are invalid.

I can't find info on index mapping so I can't figure out the range. Would appreciate some insight from you experts out there. This is driving me crazy!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.