Как я могу отобразить дату и время в формате UTC в местном часовом поясе пользователя в Excel?

5836
Kendall Lister

У меня есть электронная таблица со значениями даты / времени в формате UTC, которую я хотел бы отображать пользователям в их часовом поясе, например, такая же электронная таблица, содержащая значения даты / времени в формате UTC, предоставляется пользователям в Австралии и Англии, и каждый пользователь должен видеть дату / значения времени, преобразованные в местный часовой пояс.

Я нашел много предложений, начиная от жесткого смещения времени в формулах (например, B2 = A1 + (n / 24), где n - смещение часового пояса) до включения таблицы изменений летнего времени в электронную таблицу, но ни одно из Эти подходы позволят пользователям в разных часовых поясах видеть для себя время в местном времени, не говоря уже о сложности поддержания актуальной информации о смещении часового пояса и изменении летнего времени.

0
Excel использует только системное время компьютера. Вы можете контролировать только формат даты и времени в Excel. Если вам нужно UTC, установите часовой пояс в системе на UTC. Если вы конвертируете необработанный файл, который не был сгенерирован функцией Date в Excel, вы должны выполнить вычисления смещения. Ramhound 7 лет назад 0
Спасибо, я боялся, что это так. У вас есть источник, подтверждающий это, на который мы могли бы сослаться? Kendall Lister 7 лет назад 0
Собственный сайт Microsoft Ramhound 7 лет назад 0
Есть ли шанс быть более конкретным? Я мог бы найти альтернативный подход, если бы вы могли указать мне на конкретную часть документации, на которую вы ссылаетесь. Я не смог найти такую ​​страницу сам. Kendall Lister 7 лет назад 0
Я стираю свои исследования, которые я сделал более недели назад Ramhound 7 лет назад 0

2 ответа на вопрос

1
Imager

Не уверен, что если вы этого хотите, ячейка B3 - это время и дата, с которой вы начинаете, и формула будет корректировать часы. C3 на четыре часа раньше, а D4 - на 13 часов позже.

Ячейка C3: = B3- (4/24)

Ячейка D4: = B3 + (13/24)

Обратите внимание, что B3 - полдень, ячейка D4 - 1:00 утра СЛЕДУЮЩЕГО дня.

Спасибо, но это просто жесткое кодирование смещения - как я сказал в своем вопросе, я нашел много предложений, чтобы сделать это, и это не решение для меня, потому что, за исключением того факта, что он потерпит неудачу всякий раз, когда начинается летнее время или заканчивается, это не позволит пользователям электронной таблицы в разных часовых поясах видеть время в _their_ часовых поясах. Kendall Lister 7 лет назад 0
Это почти то же самое, что и на сайте Microsoft, там был один парень, Брайан Борг, с опцией Powershell. Вот ссылка, если вы хотите попробовать (это у меня над головой). Опубликовано 29 июля 2010: set PSCMD = "Get-Date -Date (Get-Date -Date \"! UTC! \ "). ToLocalTime ()! Format!" for / f "delims ="% o in ('PowerShell! PSCMD!') установите UTC =% o Imager 7 лет назад 0
https://answers.microsoft.com/en-us/msoffice/forum/msoffice_excel-mso_other/how-do-i-convert-gmt-to-local-time/b0d5733d-007d-4505-992f-2742780a3ef5?page= 1 Imager 7 лет назад 0
Спасибо за предложение, но это команда PowerShell, которую он использовал при создании данных, которые автор затем импортировал в Excel. Кажется, что, как сказал @Ramhound выше, Excel просто не знает о часовых поясах, и поэтому преобразование между ними в Excel невозможно. Спасибо за попытку помочь мне, хотя! Kendall Lister 7 лет назад 0
1
Kendall Lister

Исходя из комментариев @ Ramhound и моего собственного исследования, ответ таков: Excel ничего не знает о часовых поясах, и поэтому это невозможно, хотя я не нашел однозначного утверждения на этот счет.

На этой странице документации от Microsoft описано, как Excel представляет даты и не упоминаются часовые пояса, подразумевая, что Excel не поддерживает их:

https://support.office.com/en-us/article/Change-the-date-system-format-or-two-digit-year-interpretation-aaa2159b-4ae8-4651-8bce-d4707bc9fb9f

Microsoft Office Excel хранит даты в виде последовательных чисел, которые называются последовательными значениями.

Существование многих частичных решений извне Microsoft поддерживает предположение, что это невозможно, например:

https://exceljet.net/formula/convert-time-to-time-zone

Ответ на этот вопрос может помочь, если сценарии VB возможны, так как он добавляет некоторые функции преобразования системного часового пояса Windows в Excel:

https://stackoverflow.com/questions/4896116/parsing-an-iso8601-date-time-including-timezone-in-excel

Кажется, что Power Query поддерживает часовые пояса и преобразования, что может быть вариантом для пользователей Excel, которым требуется это:

https://msdn.microsoft.com/en-us/library/mt296609.aspx

Похожие вопросы