Google Apps ScriptでGoogleスプレッドシートから日付を取得して処理をしようとした際、フォーマットが意図しない形に変更されていることがあったので、フォーマットを変更する方法をメモ。
設定方法
新しくスプレッドシートを作成して、以下のように日付をシート内に記述します。
上部メニューのツール > スクリプト エディタを選択します。
シートに記述した日付を取得して、アラートで表示するようにしてみます。
function myFunction() { var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0]; var date = sheet.getRange(2, 3).getValue(); Browser.msgBox(date); }
上部の実行ボタンをクリックします。
スプレッドシートに戻ると、シート内に記載したフォーマットとは異なる形になっていました。
日付を取得した後に、フォーマットを指定した形に変更するようにします。
function myFunction() { var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0]; var date = sheet.getRange(2, 3).getValue(); date = Utilities.formatDate(date, 'Asia/Tokyo', 'yyyy/m/d'); Browser.msgBox(date); }
再度試してみると、シートに記載したフォーマットと同じ形にできました。
【参考サイト】
コメントが承認されるまで時間がかかります。