参照できるすべてのカレンダーの名前とIDを取得するコードの例です
コード.gs
function get_calenders(){
var calenders = CalendarApp.getAllCalendars();
var array = [];
for(var i = 0; i < calenders.length; i++){
var name = calenders[i].getName();
var id = calenders[i].getId();
array.push([name, id]);
}
Logger.log(array);
}
|
意訳この処理は以下を実行する すべてのカレンダーを取得する カレンダーの名前とidを入れる入れ物を用意しておく カレンダーの数だけ以下を繰り返す カレンダーの名前を取得して カレンダーのidを取得して arrayに入れる 最終的にすべてのカレンダーが入ったarrayをログに出す |
おまけ
取得した名前とIDをシートに書き出す場合
setValuesを使って以下のようなコードで書き出すことができます
コード.gs
function get_calenders(){
var calenders = CalendarApp.getAllCalendars();
var array = [];
for(var i = 0; i < calenders.length; i++){
var name = calenders[i].getName();
var id = calenders[i].getId();
array.push([name, id]);
}
set_values(array);
}
function set_values(array){
var sh = SpreadsheetApp.getActiveSheet();
var last_row = sh.getLastRow();
var start_row = last_row + 1;
var start_col = 1;
var num_rows = array.length;
var num_cols = array[0].length;
var range = sh.getRange(start_row, start_col, num_rows, num_cols);
range.setValues(array);
}
|
関連記事
setValuesを使う話
参考
https://developers.google.com/apps-script/reference/calendar/calendar-app#getAllCalendars()