earthpg:GAS専門のプログラミングスクール

Google Apps Scriptで翌月の日付を取得する簡単な方法

GASで翌月の日付を取得したいけど、どう書けばいいかわからなくて困ってるんだ…
猫男
猫男
catman
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
catman
月末を考慮するときは「0日」を設定すると、翌月の最後の日が正しく取得できるのだよ。

練習問題

君も試してみよう!次のコードを完成させて、翌月の1日の日付を取得してみてくれ。

  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
catman
徐々にレベルアップしていけばいいのさ。GASの世界は無限に広がっているからね。