[UPDATED]: To create a google calendar event using AppsScript we can use the simple method of createEvent(eventName, startTime, endTime)
. I have worked with this and did not have any issues. But the only date format I have used was the long date/time format in the google sheets (e.g. 3/9/2021 13:30:00).
Using the code below I want to combine date and time columns into a single Date object to feed into createEvent() method but get and error of Invalid Date
.
function calendarSyncNew() {
var dataSheet = mySheet;
var calendarId = calendarId;
var eventCal = CalendarApp.getCalendarById(calendarId);
var eventArray = dataSheet.getRange('A2:E').getValues();
for (x = 0; x < eventArray.length; x++) {
var event = eventArray[x];
var eventName = event[3];
var eventDate = event[0];
var timeZone = event[4];
var startTime = new Date(`${eventDate} ${event[1]} ${timeZone}`);
var endTime = new Date(`${eventDate} ${event[2]} ${timeZone}`);
eventCal.createEvent(eventName, startTime, endTime);
Logger.log(`startTime is: ${startTime}`);
Logger.log(`endTime is: ${endTime}`);
}
}