Некоторые проблемы с методом getValue при получении даты в ячейке - PullRequest
0 голосов
/ 02 мая 2019

У меня был поиск вместе, как получить дату в ячейке с помощью скрипта Google Apps правильно, но я не могу найти.Пожалуйста, не предлагайте getDisplayValues(), потому что дата в ячейке в формате "dd.MM".Я написал сценарий.это берет дату в ячейке, и затем форматирует это к "dd.MM.yy".Но с getValue() получается неаккуратно в случае, когда у меня есть дата ячейки 25.03.2019, и после получения скрипта и форматирования это выглядит 24.03.2019.

1 Ответ

1 голос
/ 02 мая 2019

Скорее всего, у вас проблема с часовым поясом.Вероятно, вы хотите, чтобы электронная таблица и сценарий использовали один и тот же часовой пояс.Вы можете сделать это в настройках электронной таблицы и в меню свойств проекта скрипта.

Кроме того, вы можете получить часовой пояс электронной таблицы и использовать его в функции 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);
}
...