earthpg:GAS専門のプログラミングスクール

GASでGoogleカレンダーを操作する方法|予定の作成・取得・削除まとめ

Googleカレンダーに予定を自動で登録したり、一覧を取ったりできないかな?GASならできる?
猫男
猫男
catman
catman
もちろんだ!GASを使えばGoogleカレンダーも自由自在に操作できるぞ!

GASでGoogleカレンダーを操作する基本

Google Apps Script(GAS)には、Googleカレンダーを扱うための便利なクラス、CalendarApp が用意されています。

これを使えば、予定の作成・取得・削除が簡単にできるんです!

GASで予定を作成する

まずは、カレンダーに予定を追加する基本コードを紹介します!

 function createEvent() { 
    const calendar = CalendarApp.getDefaultCalendar();
    const title = "打ち合わせ";
    const startTime = new Date('2024-05-01T10:00:00');
    const endTime = new Date('2024-05-01T11:00:00');
    calendar.createEvent(title, startTime, endTime);
 } 

✅ CalendarApp.getDefaultCalendar() で自分のカレンダーを取得し、
✅ createEvent() で簡単に予定を登録できます。

えっ、たったこれだけでカレンダーに登録できるの!?
猫男
猫男
catman
catman
そうさ。たった数行で作業を自動化できるのがGASのすごいところだ!

GASで予定を取得する

次に、特定期間内の予定を一覧で取得するコードです。

 function getEvents() {
    const calendar = CalendarApp.getDefaultCalendar();
    const start = new Date('2024-05-01T00:00:00');
    const end = new Date('2024-05-31T23:59:59');
    const events = calendar.getEvents(start, end);
    events.forEach(event => {
    Logger.log(event.getTitle() + \":\" + event.getStartTime());
    });
 } 

✅ getEvents(start, end) を使えば、指定した期間内の予定をまとめて取得できます!

GASで予定を削除する

作った予定を削除するのも簡単!

 function deleteEvents() {
    const calendar = CalendarApp.getDefaultCalendar();
    const start = new Date('2024-05-01T00:00:00');
    const end = new Date('2024-05-31T23:59:59');
    const events = calendar.getEvents(start, end);
    events.forEach(event => { event.deleteEvent();
    });
 } 

✅ 取得したイベントに対して deleteEvent() を実行するだけ!

登録も取得も削除も、ほんとに数行でできるんだね!
猫男
猫男
catman
catman
そう、これがGASの魅力だ。カレンダー業務の自動化ならお手のものさ。