Я уже несколько часов пытаюсь вставить текущую дату в лист Google из листов api v4. Не могу поверить, как сложно это понять!
Пока что я обнаружил, что:
Js date object не будет работать, поскольку в таблицах Google используется другая эпоха (которая, по-видимому, меняется в зависимости от Mac и Win). Мне не удалось найти какую-либо библиотеку, которая может создать этот серийный номер даты в таблицах Google / Excel. Если бы я мог, это могло бы сработать.
Если я форматирую объект даты Js в виде строки и отправляю его на лист, часовой пояс неверен из-за местоположения сервера (где выполняется api листов) и местоположения пользователя (где используется лист).
Я рассматривал возможность преобразования объекта Js Date в часовой пояс пользователя, но в таблицах Google не отображается значение GMT или UTC, которое он использует CLDR. Пока я не нашел способа использовать эту информацию для преобразования часового пояса.
Часовой пояс таблицы в формате CLDR, например America / New_York. Если часовой пояс не распознается, это может быть пользовательский часовой пояс, например GMT-07: 00.
Если я отправлю ячейку updateRequest, используя =NOW() в качестве значения, дата и время будут правильными. Но он обновляется каждый раз при редактировании электронной таблицы ... что невозможно использовать в качестве отметки времени для отправки строки. Желаю вам выключить это!
Таким образом, я хотел бы позволить таблицам Google создавать дату, поскольку они знают о часовом поясе пользователя. Конечно, есть способ просто ввести дату с листами api, которые правильно соблюдают часовой пояс пользователя? Если нет, то какие у меня варианты?