Google-apps-script – How to delete all events on many dates all at once but not the whole Calendar in Google Calendar

google-apps-scriptgoogle-calendar

How to delete all events on many dates all at once but not the whole Calendar in Google Calendar? I tried to click on a date that got an event to delete and dragged my mouse to 2 days after that date, but then I always see "create an Event". I thought I could press backspace or delete to delete all those events.

What I did so far = deleting event one by one 🙁

Best Answer

I've been able to do this with a Google Script like this. You can alter this to pinpoint the days you want to delete, etc.

function delete_events()
{
    var fromDate = new Date(2013,0,1,0,0,0); 
    var toDate = new Date(2013,0,4,0,0,0);
    var calendarName = 'My Calendar';

    // delete from Jan 1 to end of Jan 4, 2013 (for month 0 = Jan, 1 = Feb...)

    var calendar = CalendarApp.getCalendarsByName(calendarName)[0];
    var events = calendar.getEvents(fromDate, toDate);
    for(var i=0; i<events.length;i++){
      var ev = events[i];
      Logger.log(ev.getTitle()); // show event name in log
      ev.deleteEvent();
    }
 }