Digamos que você queira ter melhores informações sobre quando os seus funcionários estão de férias. Vai certamente montar uma planilha com os dados de funcionários e das férias deles parecida com a tabela abaixo:
function getFormulaResult(formula){
var ss = SpreadsheetApp.getActiveSheet();
var data;
ss.getRange("Z88").setFormula(formula);
data = ss.getRange("Z88").getValue();
ss.getRange("Z88").clearContent();
return data;
}
function updateAppointment() {
var sslCalendar = CalendarApp.getCalendarsByName("MyAgenda")[0];
var ss = SpreadsheetApp.getActiveSheet();
var collabQuantity = (getFormulaResult("=COUNTA(A:A)")-2);
var collabVacationStart, collabName, evnts, serviceCalendarTitle, svcEvent;
for(var i = 1; i < collabQuantity ; i++) {
collabName= ss.getRange(i+2, 1).getValue();
serviceCalendarTitle = "[Férias] " + collabName;
collabVacationStart= ss.getRange(i+2, 2).getValue();
evnts = sslCalendar.getEventsForDay(collabVacationStart).filter(function(elem){
return (elem.getTitle() == serviceCalendarTitle);
});
for(var j = 0; j < evnts.length; j++) {
evnts[j].deleteEvent();
}
// Criação do Evento
svcEvent = sslCalendar.createAllDayEvent(serviceCalendarTitle, collabVacationStart);
svcEvent.setDescription("Férias de " + collabName); // Descrição do evento
svcEvent.addEmailReminder(7200); // Lembrete 5 dias antes!
}
}
Sobre essa função getFormulaResult(formula), veja esse post aqui.