Google Apps Scriptで翌月の日付を取得する簡単な方法
GASで翌月の日付を取得したいけど、どう書けばいいかわからなくて困ってるんだ…

猫男

catman
困っているようだね、困ったときのcatmanさ。GASで翌月の日付を取得する方法を伝授しよう。
GASで翌月の日付を取得する基本
GASを使って現在の日付から翌月の日付を取得するのは実に簡単だ。まずは基本の方法を見てみよう。
1. 日付を取得する方法
まずは現在の日付を取得する。
var today = new Date();
この一行で現在の日付を取得できる。この日付に1を足せば翌月を算出できるのだ。
2. 翌月を設定する方法
次に翌月の日付を取得するために、新たなDateオブジェクトを操作する。
function getNextMonthDate() {
var today = new Date();
var nextMonth = new Date(today.getFullYear(), today.getMonth() + 1, today.getDate());
Logger.log(nextMonth);
}
上記のコードを実行すると、現在の日が翌月の同じ日になる。
なるほど!Dateオブジェクトを使って簡単に翌月を取得できるんだね!

猫男
翌月の日付を考慮した例外
1. 月末の処理
月末の日付で翌月を取得するときは注意が必要だ。
function getNextMonthConsideringMonthEnd() {
var today = new Date();
var nextMonth = new Date(today.getFullYear(), today.getMonth() + 1, 0);
Logger.log(nextMonth);
}
この例では、getDate()を使わずに月の最終日(0日)を考慮することで翌月の最終日が得られる。

catman
月末を考慮するときは「0日」を設定すると、翌月の最後の日が正しく取得できるのだよ。
練習問題
君も試してみよう!次のコードを完成させて、翌月の1日の日付を取得してみてくれ。
- 次のコードを補完して、翌月の1日を取得する関数を作成しよう。
function getNextMonthFirstDate() { var today = new Date(); var nextMonthFirst = new Date(today.getFullYear(), today.getMonth() + 1, ); Logger.log(nextMonthFirst); }
練習問題 解答・解説
さあ、このコードが次のステップへの手助けをしてくれる。
function getNextMonthFirstDate() {
var today = new Date();
var nextMonthFirst = new Date(today.getFullYear(), today.getMonth() + 1, 1);
Logger.log(nextMonthFirst);
}
解説:
– Dateオブジェクトを使用して翌月の日付を計算する。
– 月の部分にはtoday.getMonth() + 1を差し込む。+1をすることで翌月になる。
– 日付部分には1を指定することで翌月の1日が取得できる。
– Logger.logを使って翌月の1日を確認してみよう。
おおー、月初の日付設定もこれでクリアになった気がする!次はどんなことをやってみようかな。

猫男

catman
徐々にレベルアップしていけばいいのさ。GASの世界は無限に広がっているからね。