こうせ
今回GASを使ってカレンダーの一括登録を試みましたが、なぜか時間がズレる!
変える方法が、どれも自分の画面とは違いなんで😭
となってましたが解決できたので記事にします。
スプレッドシートからカレンダーに連携してスケジュールを一括登録する
参考 スプレッドシートからカレンダーに連携してスケジュールを一括登録する【Google Apps Script(GAS)】大阪のシステム開発会社 株式会社ウィズテクノロジーこちらのサイトを参考にしました。
というより、ほぼコピペで少し変えたくらいです。
なので、一括登録が知りたい方は上記の記事を参考にしてみてください。
時間がズレる
上記のサイトでは以下の2つの変更方法を紹介していました。
- スプレッドシートの設定
- googleカレンダーの設定
しかし、変えてもダメだったのでGAS側かなと思いログを出力してみました。
console.log(contents)
(contentsにはプログラムの中で予定の一覧が格納されています。)
予定表一覧の一部が以下になります。(一部抜粋)
'済',
Thu Mar 25 2021 11:00:00 GMT-0400 (Eastern Daylight Time),
Thu Mar 25 2021 11:00:00 GMT-0400 (Eastern Daylight Time),
Sat Dec 30 1899 07:00:00 GMT-0500 (Eastern Standard Time),
Sat Dec 30 1899 07:00:00 GMT-0500 (Eastern Standard Time),
「Eastern Standard Time」ということは「米東部時間」になっています。
こいつのせいで時間がズレています。
タイムゾーン変更
設定を見ても以下の通りタイムゾーンに関しては何もなく、探しても見つからなかったです。
今回できなかった原因
GASのエディタが新しくなっていたためできませんでした。
解決方法
エディタを古いのを使う。
右上にある「以前のエディタを使用」で古いほうを使えます。
ファイル>プロジェクトのプロパティ
ここでできました!
ログを確認すると
'',
Fri Mar 26 2021 00:00:00 GMT+0900 (日本標準時),
Fri Mar 26 2021 00:00:00 GMT+0900 (日本標準時),
Sat Dec 30 1899 21:00:00 GMT+0900 (日本標準時),
Sat Dec 30 1899 21:00:00 GMT+0900 (日本標準時),
ちゃんとかわっていました!!
カレンダーの結果もばっちりでした!!