カレンダーにイベントを追加する方法を理解しましたが、その後、既存のイベントを編集する方法を理解するために8時間も費やしました(または、いずれかの方法でイベントを削除すると、作業が完了します)。これが私が持っているものです:
function UpdateEventTime() {
var cal = CalendarApp.getCalendarById("semehjawioe@group.calendar.google.com");
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 1; // First row of data to process
var numRows = 1; // Number of rows to process
var dataRange = sheet.getRange(startRow, 5, numRows, 5);
var data = dataRange.getValues();
// var oldtstart = SpreadsheetApp.getActiveSheet().getRange('G2');
// var oldtstop = SpreadsheetApp.getActiveSheet().getRange('H2');
// ??????????????????????????????????????????????????
// ?? How do I call up and delete the old event? ??
// ??????????????????????????????????????????????????
for (i in data) {
var row = data[i];
var title = row[0]; // First column
var desc = row[1]; // Second column
var tstart = row[2];
var tstop = row[3];
var loc = row[4];
cal.createEvent(title, tstart, tstop, {description:desc,location:loc});
SpreadsheetApp.getActiveSheet().getRange('G2').setValue(tstart);
SpreadsheetApp.getActiveSheet().getRange('H2').setValue(tstop);
}
}
オンラインドキュメントで私が言えることから、イベントをプルアップすることはできません。日付範囲内のすべてのイベントをプルアップすることしかできません。そのため、コードの最後で、開始時刻と終了時刻をスプレッドシートに保存し、次にスクリプトが実行されるときにそれを参照しようとします。真ん中のコメントアウトされたセクションは私が迷子になっているところです。ここで、前回スクリプトを実行したときに追加したイベントを呼び出そうとしています。編集するか、削除する必要があります。
助けてください。