いるいろ苦労しながら、とりあえず作ったので世の中に出したかった。
/*
このコード、動くぞ!
*/
function createcalevent() {
var spreadsheet = SpreadsheetApp.openById('xxxxxxxx'); //スプレッドシートID
var sheet = spreadsheet.getSheetByName('cal'); // シート名
let calendar = CalendarApp.getCalendarById('xxx@google.com'); // アカウント
let rowmax = sheet.getLastRow();
console.log('rowmax',rowmax);
for(var i = 2; i < rowmax+1; i++) {
//getrange()の行列番号は1スタート
let yyyy = sheet.getRange(i,4,1,1).getValue(); //なんかここだけletだった。
var mm = sheet.getRange(i,5,1,1).getValue()-1;
var dd = sheet.getRange(i,6,1,1).getValue();
var eventday = new Date(yyyy,mm,dd,0,0,0,0);
// Dateの月は1月がゼロ扱い。そういう仕様。
// だから、var mm のところで -1 してる。
var summary = sheet.getRange(i,7,1,1).getValue();
var location = sheet.getRange(i,8,1,1).getValue();
var description = sheet.getRange(i,9,1,1).getValue();
var option = {
'location': sheet.getRange(i,8,1,1),
'description':sheet.getRange(i,9,1,1)
};
if(summary != '') {
console.log(eventday);
console.log(summary,location,description);
var event = calendar.createEvent(summary,eventday,eventday,option);
// これは、getCalendarById()を使うことでエラーが出なくなる。
}
}
}
とりあえずは、うまく動きました。良かったです。
いろいろなサイトを参考にしましたが、記録取れなかったので記載できません。
参考にしたサイトを作成した方、ありがとうございます!