ドライブ上の Google カレンダーと「マスター スプレッドシート」を同期させる Google Apps Script を作成しようとしていますが、これは可能ですか? 次の 2 つの投稿を見つけました。
http://blog.ouseful.info/2010/03/04/maintaining-google-calendars-from-a-google-spreadsheet/
http://blog.ouseful.info/2010/03/05/grabbing-google-calendar-event-details-into-a-spreadsheet/
これは多くの if ステートメントとロジックを使用して実行できると確信していますが、もっと簡単な方法があるのではないでしょうか?
次の簡単なスクリプトを提供するだけになりました。本当に必要だったのは、2 つの列に基づいてイベントを追加することだけでしたが、これを開発するには時間がかかりすぎました。
function onOpen() {
//spawns a menu with a button that triggers AddToCal
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var entries = [{
name : "Add event to calendar",
functionName : "AddToCal"
}];
sheet.addMenu("Data To Calendar Plugin", entries);
};
function AddToCal(){
//get the current row
var ss = SpreadsheetApp.getActiveSpreadsheet();
var cell = ss.getActiveCell();
var R = cell.getRow();
//grab values for current row to pass to calendar event
var date_of_event = ss.getRange('G'+R).getValue();
var date = new Date(date_of_event);
var event_title = ss.getRange('A'+R).getValue();
//access the calendar
var cal = CalendarApp.getCalendarById('[IDREMOVED]');
cal.createAllDayEvent(event_title,date);
ss.toast("Event added to " + cal.getName());
}