如何将多个日历放入 Google 电子表格?
How to put multiple Calendars in Google Spreadsheet?
我还很年轻,刚接触 google 脚本。我想要 google 电子表格中的多个 google 日历。调试器说一切正常,但在我的电子表格上我没有看到任何结果。
这是我写的:
function Calendar(){
var now=new Date();
var startpoint=new Date(now.getTime()-60*60*24*1000);
var endpoint=new Date(now.getTime()+60*60*24*100*1000);
var event1=CalendarApp.getCalendarById("df3r8epp4rpgc49eq4jmm2vot0@group.calendar.google.com").getEvents(startpoint, endpoint);
var event2=CalendarApp.getCalendarById("jie49v8l2vdhmrigruo587doss@group.calendar.google.com").getEvents(startpoint, endpoint);
var ss=SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Kalender");
ss.clear();
for (var i,o=0;i<event1.length;i++) {
ss.getRange(i,o+1,1 ).setValues((event1[i])(event2[o].getTitel()));
这应该有效。
function addEventTitles() {
var now = new Date();
var startpoint = new Date(now.getTime() - 60 * 60 * 24 * 1000);
var endpoint = new Date(now.getTime() + 60 * 60 * 24 * 100 * 1000);
var cal1 = CalendarApp.getCalendarById('df3r8epp4rpgc49eq4jmm2vot0@group.calendar.google.com');
var cal2 = CalendarApp.getCalendarById('jie49v8l2vdhmrigruo587doss@group.calendar.google.com');
var events1 = cal1.getEvents(startpoint, endpoint);
var events2 = cal2.getEvents(startpoint, endpoint);
var allEvents = events1.concat(events2);
// Put all the events into one array so we can loop through them
var sheet = SpreadsheetApp.getActive().getSheetByName('Kalender');
sheet.clear();
var eventTitles = [];
// Create an empty array we can add the titles to
for (var i = 0; i < allEvents.length; i++) {
eventTitles.push([allEvents[i].getTitle()]);
// Add each event title to the eventTitles array as an array (that's why it's surrounded by square brackets)
// Titles are added as an array due to Google's 2d array useage for row and column representation
}
sheet.getRange(1, 1, eventTitles.length, 1).setValues(eventTitles);
}
参考资料
我还很年轻,刚接触 google 脚本。我想要 google 电子表格中的多个 google 日历。调试器说一切正常,但在我的电子表格上我没有看到任何结果。
这是我写的:
function Calendar(){
var now=new Date();
var startpoint=new Date(now.getTime()-60*60*24*1000);
var endpoint=new Date(now.getTime()+60*60*24*100*1000);
var event1=CalendarApp.getCalendarById("df3r8epp4rpgc49eq4jmm2vot0@group.calendar.google.com").getEvents(startpoint, endpoint);
var event2=CalendarApp.getCalendarById("jie49v8l2vdhmrigruo587doss@group.calendar.google.com").getEvents(startpoint, endpoint);
var ss=SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Kalender");
ss.clear();
for (var i,o=0;i<event1.length;i++) {
ss.getRange(i,o+1,1 ).setValues((event1[i])(event2[o].getTitel()));
这应该有效。
function addEventTitles() {
var now = new Date();
var startpoint = new Date(now.getTime() - 60 * 60 * 24 * 1000);
var endpoint = new Date(now.getTime() + 60 * 60 * 24 * 100 * 1000);
var cal1 = CalendarApp.getCalendarById('df3r8epp4rpgc49eq4jmm2vot0@group.calendar.google.com');
var cal2 = CalendarApp.getCalendarById('jie49v8l2vdhmrigruo587doss@group.calendar.google.com');
var events1 = cal1.getEvents(startpoint, endpoint);
var events2 = cal2.getEvents(startpoint, endpoint);
var allEvents = events1.concat(events2);
// Put all the events into one array so we can loop through them
var sheet = SpreadsheetApp.getActive().getSheetByName('Kalender');
sheet.clear();
var eventTitles = [];
// Create an empty array we can add the titles to
for (var i = 0; i < allEvents.length; i++) {
eventTitles.push([allEvents[i].getTitle()]);
// Add each event title to the eventTitles array as an array (that's why it's surrounded by square brackets)
// Titles are added as an array due to Google's 2d array useage for row and column representation
}
sheet.getRange(1, 1, eventTitles.length, 1).setValues(eventTitles);
}