Google Sheets экспортирует дату по-разному в зависимости от выбранного типа файла (.xlsx / .ods) - PullRequest
0 голосов
/ 31 марта 2020

У меня есть простой документ Google Sheets с датами в 1 столбце. Когда я экспортирую Лист в файл .xlsx, дата экспортируется как 43830 (необработанное значение). Однако, когда я экспортирую тот же Лист в качестве файла .ods, дата экспортируется как 43830.083333333336 (необработанное значение).

Значение .ods с десятичными числами на самом деле является правильным / желаемым значением из-за содержимого часового пояса. Почему дата не экспортируется таким образом, когда я экспортирую лист в виде файла .xlsx?

Я импортирую файлы в приложении Angular 9 с библиотекой xlsx js .

Когда я импортирую файл .xlsx , дата в листе (31-12-2019 дд-мм-гггг ) анализируется для даты объект. Если я позвоню date.toISOString(), он вернет:

  • 2019-12-30T21: 59: 28.000Z (странно, правда?)

с .ods файл , date.toISOString() возвращает следующее:

  • 2019-12-31T00: 00: 00.000Z (правильная дата, которая соответствует фактической дате в листе)

(я использую опцию xlsx library cellDates: true при чтении файлов Excel, поэтому даты в файле анализируются.)


Кто-нибудь знает, если это ошибка в Google Sheets? У кого-то еще была эта проблема при использовании библиотеки xlsx в js / ts? Если да, это как-то поправимо на моей стороне?

Спасибо!

...