【发布时间】:2023-01-19 20:59:37
【问题描述】:
我在电子表格中有以下列:
| Vorname | Name | Position | Thema | 19.02.23 | 22.02.23 | 28.02.23 | |
|---|---|---|---|---|---|---|---|
| a.b@gmail.com | Diego | Flores | AB | C | 1 | ||
| b.c@gmail.com | Alex | Flores | DB | F | 1 | ||
| c.d@gmail.com | Diego | Sanchez | GB | D | 1 | ||
| d.e@gmail.com | Alex | Sanchez | FB | G | 1 |
该电子表格与以下谷歌应用程序脚本链接:
function createCalendarEvents() {
var spreadsheetId = '1NQULPeaxoaAaNWU4ojapb4R50JEdl62Ip2e9yjUB_sw';
var calendarId = "diego.flores@gmail.com";
var sheetName = '2';
var spreadsheet = SpreadsheetApp.openById(spreadsheetId);
var sheet = spreadsheet.getSheetByName(sheetName);
var calendar = CalendarApp.getCalendarById(calendarId);
var data = sheet.getDataRange().getValues();
var headers = data.shift();
// console.log("spreadsheet: "+spreadsheet);
// console.log("sheet: "+sheet);
// console.log("calendar: "+calendar);
// console.log("headers: "+headers);
// console.log("data: "+data);
console.log("email: "+email);
for (var i = 0; i < data.length; i++) {
var row = data[i];
var email = row[0];
var firstName = row[1];
var lastName = row[2];
var position = row[3];
var topic = row[4];
console.log("email: "+email);
for (var j = 5; j < row.length; j++) {
if (row[j] === '1') {
var date = new Date(headers[j]);
var eventTitle = firstName + " " + lastName + " - " + position + " - " + topic;
var event = calendar.createEvent(eventTitle, date, date);
event.setLocation("Office");
event.addEmailReminder(15);
}
}
}
}
当日期列中的列包含 1 时,脚本应创建一个事件,其中填充日历 diego.flores@gmail.com 中该行的信息。但是它不起作用,没有创建日历条目。我 100% 确定我拥有日历的授权并且脚本已连接到正确的工作表。日历和电子表格 API 已激活。也许有人可以给我提示或提示。谢谢!
【问题讨论】:
-
可以提供
But something it is not working的详细资料吗? -
执行脚本不会创建任何日历事件
-
谢谢你的回复。从您的回复和脚本中,我提出了一个修改点。请证实。如果那没有用,我深表歉意。
标签: javascript google-apps-script spreadsheet