📆

【GAS】Googleカレンダーの祝日バグ!?節分、七五三、クリスマスが祝日扱い!?【解決方法】

2024/11/11に公開

Googleカレンダーの祝日

2024年9月頃からGoogleカレンダーの『日本の祝日』の仕様が変わったようです。
GASで祝日を扱う場合は注意が必要です。

『日本の祝日』カレンダー

『日本の祝日』は、Googleカレンダーのデフォルトで登録されています。このカレンダーIDはja.japanese#holiday@group.v.calendar.google.comです。2024年9月頃から従来の祝日に加えて、その他の行事(節分、雛祭り、母の日、七夕、七五三、クリスマス)が表記されるようになっています。

祝日カレンダー(銀行休業日、節分、七夕、七五三、クリスマス含む)

// カレンダー ID: ja.japanese#holiday@group.v.calendar.google.com
2024/01/01	銀行休業日
2024/01/01	元日
2024/01/02	銀行休業日
2024/01/03	銀行休業日
2024/01/08	成人の日
2024/02/03	節分
2024/02/11	建国記念の日
2024/02/12	建国記念の日 振替休日
2024/02/23	天皇誕生日
2024/03/03	雛祭り
2024/03/20	春分の日
2024/04/29	昭和の日
2024/05/03	憲法記念日
2024/05/04	みどりの日
2024/05/05	こどもの日
2024/05/06	こどもの日 振替休日
2024/05/12	母の日
2024/07/07	七夕
2024/07/15	海の日
2024/08/11	山の日
2024/08/12	休日 山の日
2024/09/16	敬老の日
2024/09/22	秋分の日
2024/09/23	秋分の日 振替休日
2024/10/14	スポーツの日
2024/11/03	文化の日
2024/11/04	文化の日 振替休日
2024/11/15	七五三
2024/11/23	勤労感謝の日
2024/12/25	クリスマス

GASで祝日のみを扱いたい場合、その他の行事は邪魔になります。そこで従来通りの祝日のみのカレンダーに代替が必要です。新たなカレンダーIDはja.japanese.official#holiday@group.v.calendar.google.comです。

祝日カレンダー(ただし「銀行休業日」含む)

// カレンダー ID: ja.japanese.official#holiday@group.v.calendar.google.com
2024/01/01	銀行休業日
2024/01/01	元日
2024/01/02	銀行休業日
2024/01/03	銀行休業日
2024/01/08	成人の日
2024/02/11	建国記念の日
2024/02/12	建国記念の日 振替休日
2024/02/23	天皇誕生日
2024/03/20	春分の日
2024/04/29	昭和の日
2024/05/03	憲法記念日
2024/05/04	みどりの日
2024/05/05	こどもの日
2024/05/06	こどもの日 振替休日
2024/07/15	海の日
2024/08/11	山の日
2024/08/12	休日 山の日
2024/09/16	敬老の日
2024/09/22	秋分の日
2024/09/23	秋分の日 振替休日
2024/10/14	スポーツの日
2024/11/03	文化の日
2024/11/04	文化の日 振替休日
2024/11/23	勤労感謝の日

エラーの原因は?

CalendarApp.getCalendarById("カレンダーID")でカレンダーを取得する場合、Googleカレンダーの画面左側の【マイカレンダー】及び【他のカレンダー】の欄に当該カレンダーが登録されていないとエラーになります。

エラー TypeError: Cannot read properties of null (reading 'getEvents')


デフォルトで『日本の祝日』ja.japanese#holiday@group.v.calendar.google.comは登録されています。新たにja.japanese.official#holiday@group.v.calendar.google.comのカレンダーを加えたいのですが、両方の登録はできないようです。既存の『日本の祝日』を削除してから登録をする必要があります。

Discussion