Utilities.formatDate giving strange results (spreadsheet example)

1,153 views
Skip to first unread message

Joe B

unread,
Dec 19, 2021, 6:18:29 PM12/19/21
to Google Apps Script Community
Column A has dates. I use Google Apps Script to changer the date format and write to Column C. Strangely, the year is not being interpreted correctly for some dates.

image [5].png

Not sure if you'll be able to access the script via spreadsheet, but here is the entire script:

function myFunction() {

  var app = SpreadsheetApp;
  var ss = app.getActiveSpreadsheet();
  var activeSheet = ss.getActiveSheet();

  var dt1 = activeSheet.getRange(1,1).getValue();
  var dt2 = activeSheet.getRange(2,1).getValue();
  var dt3 = activeSheet.getRange(3,1).getValue();
  var dt4 = activeSheet.getRange(4,1).getValue();
  var dt5 = activeSheet.getRange(5,1).getValue();
  var dt6 = activeSheet.getRange(6,1).getValue();
  var dt7 = activeSheet.getRange(7,1).getValue();
  var dt8 = activeSheet.getRange(8,1).getValue();
  var dt9 = activeSheet.getRange(9,1).getValue();
  var dt10 = activeSheet.getRange(10,1).getValue();

  dt1_format = Utilities.formatDate(dt1, 'America/New_York', "dd MMM YY")
  dt2_format = Utilities.formatDate(dt2, 'America/New_York', "dd MMM YY")
  dt3_format = Utilities.formatDate(dt3, 'America/New_York', "dd MMM YY")
  dt4_format = Utilities.formatDate(dt4, 'America/New_York', "dd MMM YY")
  dt5_format = Utilities.formatDate(dt5, 'America/New_York', "dd MMM YY")
  dt6_format = Utilities.formatDate(dt6, 'America/New_York', "dd MMM YY")
  dt7_format = Utilities.formatDate(dt7, 'America/New_York', "dd MMM YY")
  dt8_format = Utilities.formatDate(dt8, 'America/New_York', "dd MMM YY")
  dt9_format = Utilities.formatDate(dt9, 'America/New_York', "dd MMM YY")
  dt10_format = Utilities.formatDate(dt10, 'America/New_York', "dd MMM YY")

  activeSheet.getRange(1,3).setValue("date is  " + dt1_format)
  activeSheet.getRange(2,3).setValue("date is  " + dt2_format)
  activeSheet.getRange(3,3).setValue("date is  " + dt3_format)
  activeSheet.getRange(4,3).setValue("date is  " + dt4_format)
  activeSheet.getRange(5,3).setValue("date is  " + dt5_format)
  activeSheet.getRange(6,3).setValue("date is  " + dt6_format)
  activeSheet.getRange(7,3).setValue("date is  " + dt7_format)
  activeSheet.getRange(8,3).setValue("date is  " + dt8_format)
  activeSheet.getRange(9,3).setValue("date is  " + dt9_format)
  activeSheet.getRange(10,3).setValue("date is  " + dt10_format)
}


spreadsheet link: 

Tanaike

unread,
Dec 19, 2021, 9:01:15 PM12/19/21
to Google Apps Script Community
In your script, `YY` is used as the year. In this case, it means the week year. In order to remove your current issue, how about replacing `YY` to `yy`? Ref

Reply all
Reply to author
Forward
0 new messages