今回はカレンダーの設定色を取得するメソッドを紹介します。カレンダーの設定色とは、『【コピペで使える】GASですべてのカレンダーを取得してみる』で紹介しているカレンダー名の左側にある四角いチェックボックスの色だったり、予定を作成した際の予定の色がそのカレンダーの設定色になります。今回はカレンダーの設定色を取得する方法を学んでいきましょう。
カレンダーの設定色を取得するメソッド — getColor
コピペで使えるサンプルコードを参照したい方はこちらをクリックすればサンプルコードまでジャンプできますので、手っ取り早くコードを確認したい方はクリックしてください。
今回ご紹介するgetColor()メソッドですが、CalendarApp.getColor()という使い方と、特定のカレンダーを取得してから使う方法(CalendarApp.getCalendarById(“カレンダーID”).getColor()等)の2通りの使い方があります。前者の方法で実行すると、実行したアカウントのデフォルトカレンダーの設定色を16進カラーコードで取得出来ます。後者のgetCalendar系メソッドで取得したカレンダーオブジェクトに対してgetColor()メソッドを利用すると取得したカレンダーの設定色が取得できます。イベントオブジェクトに対しては予定の設定色が取得出来ます。
それでは、今回のメソッドの説明に移ります。
『 引数に入れる値 』
今回のメソッドに関しては引数は必要ありません。
『 関連するメソッド 』
合わせて覚えたいリマインダー操作に関するメソッド
- setColor — カレンダーや予定に色を設定する
- getOwnedCalendarsByName — 自分がオーナーのカレンダーをカレンダー名で取得する
- getOwnedCalendarById — 自分がオーナーのカレンダーをカレンダーIDで取得する
- getAllOwnedCalendars — 自分がオーナーのすべてのカレンダーを取得する
- getDefaultCalendar — デフォルトカレンダーを取得する
- getCalendarsByName — カレンダー名からカレンダーを取得する
- getCalendarById — カレンダーIDからカレンダーを取得する
- getAllCalendars — すべてのカレンダーを取得する
デフォルトカレンダーから設定色を取得するサンプルコード
//デフォルトカレンダーの設定色を16進カラーコードで取得するコード function sampleCodeForGetColorOfDefaultCalendar() { let color = CalendarApp.getColor(); //let color = CalendarApp.getDefaultCalendar().getColor(); //どちらでもデフォルトカレンダーの設定色が取得できます console.log(color); }
『 変数の説明 』
color = デフォルトカレンダーの設定色を代入
『CalendarApp.getColor()サンプルコード』に上記サンプルスクリプトを記載したスクリプトがありますので、アクセスして関数名にsampleCodeForGetColorOfDefaultCalendarを選択して▶ボタンをクリックしてみましょう。
デフォルトカレンダーの色が#000000のフォーマットで取得され、実行ログに出力されると思います。
日本の祝日カレンダーから設定色を取得するサンプルコード
//日本の祝日がカレンダーに表示されていれば設定色を16進カラーコードで取得するコード function sampleCodeForGetColorOfJapaneseHolidays() { let calendars = CalendarApp.getCalendarsByName("日本の祝日"); if (calendars[0]) { let calendar = calendars[0]; let color = calendar.getColor(); console.log(color); } else { console.log("日本の祝日がカレンダーに表示されていません"); } }
『 変数の説明 』
color = デフォルトカレンダーの設定色を代入
先程と同じサンプルコードにsampleCodeForGetColorOfJapaneseHolidaysという関数があるので、選択して▶ボタンをクリックしてみましょう。今度は日本の祝日カレンダーの色が出力できます。
もしカレンダーに日本の祝日を追加していない場合は実行ログに『日本の祝日がカレンダーに表示されていません』という言葉が出力されます。
まとめ
今回のコードは、カレンダーの設定色を取得するコードです。色が重要になる場面はそれほどないかとは思いますが、条件分岐などに利用することも出来ますので覚えておいて損はないメソッドになります。