このページでは、Googleカレンダーに新しいカレンダーを作成するcreateCalendar()の使い方を紹介します。
予定ではなく、カレンダーを作成するメソッドですので、仕事用やプライベート用などとわけて予定を管理する際に使う事ができます。
新しいカレンダーを作成するメソッド — createCalendar
コピペで使えるサンプルコードを参照したい方はこちらをクリックすればサンプルコードまでジャンプできますので、手っ取り早くコードを確認したい方はクリックしてください。
Googleが提供しているリファレンスはとても詳しく書いてあるのですが、英語のみの提供のためハードルが高く感じる人も少なくないと思います。そのハードルを少しでも低くし、より多くの人にGoogle Apps Scriptを使えるようになってもらいたいという思いから日本語のリファレンスページを用意しています。
このメソッドを利用するとGoogleカレンダーに新しいカレンダーを作成することができます。
『 引数に入れる値 』
- name(カレンダー名) — ダブルクォーテーションで囲んだ文字列
- options(詳細オプション) — JSONオブジェクト
- location — カレンダーの場所 (文字列)
- (現在設定できますが、Googleカレンダー側でサポートされていません)
- summary — カレンダーの説明 (文字列)
- (現在設定できますが、Googleカレンダー側でサポートされていません)
- timeZone — タイムゾーン (文字列)
- (日本時間はAsia/Tokyo、その他の地域はJoda.org参照)
- color — カレンダーの色 (文字列)
- (十六進法形式の文字列「#rrggbb」か、CalendarApp.Colorの色)
- hidden — true / false
- (trueにするとカレンダーは作成されますがリストに表示されません)
- selected — true / false
- (trueにすると予定が表示される状態でカレンダーが作成されます。true/falseどちらの場合もリストには表示されます)
- location — カレンダーの場所 (文字列)
『 返り値 』
新規作成されたcalendarオブジェクト
『 関連するメソッド 』
合わせて覚えたいリマインダー操作に関するメソッド
- getOwnedCalendarsByName — 自分がオーナーのカレンダーをカレンダー名で取得する
- getOwnedCalendarById — 自分がオーナーのカレンダーをカレンダーIDで取得する
- getAllOwnedCalendars — 自分がオーナーのすべてのカレンダーを取得する
- getDefaultCalendar — デフォルトカレンダーを取得する
- getCalendarsByName — カレンダー名からカレンダーを取得する
- getCalendarById — カレンダーIDからカレンダーを取得する
- getAllCalendars — すべてのカレンダーを取得する
- getId — カレンダーIDを取得する
createCalendar(name)サンプルコード
新しいカレンダーを作成する基本的な方法を紹介します。
//新規のカレンダーを作成するコード function sampleCodeForCreateCalendar1() { let name = "GASカレンダーサンプル①"; CalendarApp.createCalendar(name); }
『 変数の説明 』
name = カレンダーの名前
『新規カレンダーを作成するサンプルコード』に上記サンプルスクリプトを記載したスクリプトがありますので、アクセスして関数名を選択後に▶ボタンをクリックしてプログラムを実行してみましょう。
実行が完了したらカレンダーを確認してください。GASカレンダーサンプル①というカレンダーが追加されていれば成功です。
作成したカレンダーにその後もアクセスできるようにしたい場合は、カレンダー作成後にカレンダーIDを取得してどこかに保存しておけば良いかと思います。getCalendarByIdメソッドでカレンダーを呼び出し、予定を作成したり編集するといった機能が使えると思います。
createCalendar(name, options)サンプルコード
次に、詳細情報を指定して新しいカレンダーを作成する方法を紹介します。
//詳細を指定して新規のカレンダーを作成するコード function sampleCodeForCreateCalendar2() { let name = "GASカレンダーサンプル②"; let options = { location: "location", summary: "summary", timeZone: "Asia/Tokyo", color: CalendarApp.Color.RED, hidden: false, selected: true } CalendarApp.createCalendar(name, options); }
『 変数の説明 』
name = カレンダーの名前
options = カレンダーの詳細設定を指定
こちらのサンプルスクリプトも『新規カレンダーを作成するサンプルコード』に上記サンプルスクリプトを記載したスクリプトがありますので、アクセスして関数を選択して▶ボタンをクリックしてみましょう。
実行が完了したらカレンダーを確認してGASカレンダーサンプル②が作成されていれば処理は問題なく完了しています。
設定した詳細設定については、カレンダー名の横の『︙』をクリックして『設定』から確認することができます。
まとめ
カレンダーを新規作成するコードをご紹介しました。
利用シーンとしては色々あると思いますが、たとえばシステム専用のカレンダーの有無を確認し、なければシステム出力用のカレンダーを生成して予定を作成していくなどといったことができるようになると思います。