GASを使ってGoogleカレンダーの予定をスプレッドシートに取り込む
今回はタイトル通り、
GASを使ってGoogleカレンダーの予定をスプレッドシートに取り込む方法を紹介します!
以下様々なGASの記事を紹介してます!
https://bzbot.work/
紹介記事
今回紹介している記事は以下です!
https://bzbot.work/2019/02/20/gas-calendar/
GAS
function getCal() {
//カレンダーIDを指定して、カレンダーを取得
var calendar = CalendarApp.getCalendarById('********************');
//対象の日付を範囲指定
var date = '2019/01/01';
//この時はまだfrom,end両方に変数dateで指定した日付が入っている
var from= new Date(date);
var end = new Date(date);
//月を指定するときは必ず大文字のMMを指定します(半角mmだとminutesを指してしまう)
Logger.log('from:' + Utilities.formatDate( from, 'Asia/Tokyo', 'yyyy-MM-dd'));
Logger.log('end:' + Utilities.formatDate( end, 'Asia/Tokyo', 'yyyy-MM-dd'));
//endのMonthm(月)に+1をして翌月を指定
end.setMonth(end.getMonth()+1);
Logger.log('== setMonth、getMonthでendに+1ヶ月後 =====');
Logger.log('from:' + Utilities.formatDate( from, 'Asia/Tokyo', 'yyyy-MM-dd'));
Logger.log('end:' + Utilities.formatDate( end, 'Asia/Tokyo', 'yyyy-MM-dd'));
//getEventsで取得したいカレンダーの始まりと終わりを指定して引数にセット
var events = calendar.getEvents(from, end);
//アクティブなシートを取得
var sheet = SpreadsheetApp.getActiveSheet();
//ヘッダ行に入る値を指定(誤って削除しても都度指定)
sheet.getRange('A'+(1)).setValue('タイトル');
sheet.getRange('B'+(1)).setValue('開始時刻');
sheet.getRange('C'+(1)).setValue('終了時刻');
sheet.getRange('D'+(1)).setValue('所要時間');
sheet.getRange('E'+(1)).setValue('詳細');
sheet.getRange('F'+(1)).setValue('住所');
//eventsに入っている要素の数だけ実行
for (var i = 0; i < events.length; i++) {
var title = events[i].getTitle();
var startTime = events[i].getStartTime();
var endTime = events[i].getEndTime();
var duration = (endTime - startTime) /(1000*60)/(60);
var detail = events[i].getDescription();
var location = events[i].getLocation();
//取得した値をスプレッドシートに反映
sheet.getRange('A'+(i+2)).setValue(title);
sheet.getRange('B'+(i+2)).setValue(startTime).setNumberFormat('yyyy/mm/dd hh:mm');
sheet.getRange('C'+(i+2)).setValue(endTime).setNumberFormat('yyyy/mm/dd hh:mm');
sheet.getRange('D'+(i+2)).setValue(duration);
//sheet.getRange('E'+(i+2)).setValue(detail);
sheet.getRange('F'+(i+2)).setValue(location);
}
}
まずはじめにカレンダーIDを取得します。
GAS
var calendar = CalendarApp.getCalendarById('********************');
取得方法は以下部分から可能です。
図1
図2
Author And Source
この問題について(GASを使ってGoogleカレンダーの予定をスプレッドシートに取り込む), 我々は、より多くの情報をここで見つけました https://qiita.com/Bzbot/items/73575c75c1a532cf0b67著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .