0
好的,首先,我正在嘗試的是同時更新Google工作表和日曆。因此,假設您的電子表格中有更新,還會更新日曆。然而,這是我未能做到的所有事情。Google驅動器電子表格和日曆邀請嘉賓
- 如果有日曆中的變化,會出現在電子表格
- 沒有改變,我無法找到的代碼,邀請客人到日曆。到目前爲止,我所知道的是我需要使用「參與者[]」,但我無法找到示例向我展示如何完成它。我發現了一些java代碼,但如果我沒有弄錯,它的區別就不同了。
因此,這些將是電子表格
題名開始時間結束時間位置說明遊客的事件ID
順序這一個是在谷歌片的代碼。
function onOpen() {
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var entries = [{
name : "Export Events",
functionName : "exportEvents"
}];
sheet.addMenu("Calendar Actions ", entries);
};
function exportEvents() {
var sheet = SpreadsheetApp.getActiveSheet();
var headerRows = 1;
var range = sheet.getDataRange();
var data = range.getValues();
var calId = "[email protected]"; // calenderID
var cal = CalendarApp.getCalendarById(calId);
for (i in data) {
if (i < headerRows) continue;
var row = data[i];
var date = new Date(row[0]);
var title = row[1];
var tstart = new Date(row[2]);
tstart.setDate(date.getDate());
tstart.setMonth(date.getMonth());
tstart.setYear(date.getYear());
tstart.setMinutes(tstart.getMinutes() + 6)
var tstop = new Date(row[3]);
tstop.setDate(date.getDate());
tstop.setMonth(date.getMonth());
tstop.setYear(date.getYear());
tstop.setMinutes(tstop.getMinutes() + 6)
var loc = row[4];
var desc = row[5];
var guest = row[6]
var id = row[7];
try
{
var event = cal.getEventSeriesById(id);
event.deleteEventSeries();
row[7] = '';
}
catch (e) {
}
var newEvent = cal.createEvent(title, new Date(tstart), new Date(tstop), {description:desc,location:loc}).getId();
row[7] = newEvent;
debugger;
}
range.setValues(data);
}
如果可能的話,我會對此有一些指導,因爲我被卡住了。
經過一些更多的研究,我發現我需要使用這些代碼。 var event = cal.getEventSeriesById(id); event.addGuest(guest); 但它沒有工作,它說動作不允許 – Muiz
看到這篇文章http://stackoverflow.com/questions/26376942/adding-guests-to-calendar-event,也是這個輝煌的一個:http://stackoverflow.com/問題/ 15788897 /創建,谷歌日曆事件,從功能的電子表格,但是,防止-重複/ 15790894#15790894 –