カレンダーを取得する3つの方法~CalenderApp~【GAS】

GASでカレンダーの処理を自動的にすることで、予定の管理なども可能になります。

そのときに、カレンダーの取得は必須です。

この記事では、以下の3つのカレンダー取得方法について解説します。

3つの方法

①カレンダーIDで取得

②デフォルトカレンダーを取得

③所有または閲覧しているカレンダーを取得

カレンダー取得する方法は、これで全てです。
これらを場合によって使い分けることで、実装がより楽になるでしょう。

カレンダーIDで取得

他のGoogleアプリケーションと同様に、カレンダーにも一意で決まるIDが付与されています。

カレンダーIDの確認方法

Googleカレンダーの画面で、
IDを取得したいカレンダーの右側にある三点リーダーアイコンをクリックします。

すると、オーバーフローメニューが開くので、「設定と共有」を選択します。

設定画面の左側メニューから「カレンダーの統合」をクリックすると、
画面がスクロールしカレンダーIDを確認できます。

カレンダーIDの決まり方

ユーザーのデフォルトのカレンダーであれば、
ユーザーのGoogleアカウントのアドレス自体がカレンダーIDに。

別のカレンダーであれば、xxxxxxxxxxxx@group.calender.google.com という形式のカレンダーIDになります!

カレンダーIDを用いてカレンダを取得する

では、準備ができたので、カレンダーIDからカレンダーを取得してみましょう。

取得するには、getCalenderByIdメソッドを用います。

CalenderApp.getCalenderById(カレンダーID)

実際に使用してみると以下のようになります。

function getCalender() {
  const id = "xxxxxxxxxxxx@group.calender.google.com"
  const calender = CalendarApp.getCalendarById(id);
  console.log(calender.getName())
}

デフォルトカレンダーを取得

では、デフォルトカレンダーを取得する方法を紹介します。

デフォルトカレンダーを取得する場合は、先ほどと大きな差はないです。

メソッドは、getDefaultCalender() を使用します。

以下のように使用します。

function getCalender() {
  const calender = CalendarApp.getDefaultCalendar();
  console.log(calender.getName())
}

所有または閲覧しているカレンダーを取得

ユーザーが所有するカレンダー、またはアクセス可能なカレンダーを取得するには、それぞれ以下のメソッドを用います。

使う2つのメソッド

getAllOwnedCalendars メソッド

CalendarApp.getAllOwnedCalendars();

getAllCalenders メソッド

CalendarApp.getAllCalenders();

どちらのメソッドも、取得するカレンダーが複数存在する可能性があるので、配列で返されます。

例えば、getAllCalenders メソッドで全てのカレンダーについて取得してみましょう。

function getCalender() {
  const calenders = CalendarApp.getAllCalendars();

  for (const calender of calenders){
    console.log(calender.getName())
  }
}

実行すると、アクセス可能な全てのカレンダー名がログ出力されます。

まとめ

今回は、GASでカレンダーを取得する方法について解説しました。

他にも、GASでできる様々な効率化について解説しています。ぜひ参考にしてみてください。

では、また!

(Visited 87 times, 1 visits today)