使用getValue方法获取单元格中的日期有些麻烦

时间:2019-05-02 10:48:10

标签: google-apps-script google-sheets getvalue

我一直在搜索,如何正确使用Google Apps脚本在单元格中获取日期,但找不到。请不要提供getDisplayValues(),因为单元格中的日期为“ dd.MM”格式。我写了一个剧本。该日期在单元格中,然后将其格式化为“ dd.MM.yy”。但是在我有一个单元格日期getValue()的情况下,使用25.03.2019显得很草率,并且在收到脚本并对其进行格式化后看起来像24.03.2019

1 个答案:

答案 0 :(得分:1)

您很有可能遇到时区问题。您可能希望电子表格和脚本使用相同的时区。您可以在spreadsheet settings和脚本的项目属性菜单中执行此操作。

或者,您可以获取spreadsheet time zone并将其用于Utilities.formatDate()函数中。

function getAndFormatDate() {
  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.getSheetByName("Sheet29");
  var cell = sheet.getRange("A1");
  var value = cell.getValue();
  var timeZone = spreadsheet.getSpreadsheetTimeZone(); // Get spreadsheet time zone
  var formattedDate = Utilities.formatDate(value, timeZone, "dd.MM.yy");
  Logger.log(formattedDate);
}