Как я могу отобразить дату и время в формате UTC в местном часовом поясе пользователя в Excel?
5836
Kendall Lister
У меня есть электронная таблица со значениями даты / времени в формате UTC, которую я хотел бы отображать пользователям в их часовом поясе, например, такая же электронная таблица, содержащая значения даты / времени в формате UTC, предоставляется пользователям в Австралии и Англии, и каждый пользователь должен видеть дату / значения времени, преобразованные в местный часовой пояс.
Я нашел много предложений, начиная от жесткого смещения времени в формулах (например, B2 = A1 + (n / 24), где n - смещение часового пояса) до включения таблицы изменений летнего времени в электронную таблицу, но ни одно из Эти подходы позволят пользователям в разных часовых поясах видеть для себя время в местном времени, не говоря уже о сложности поддержания актуальной информации о смещении часового пояса и изменении летнего времени.
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 не поддерживает их:
Ответ на этот вопрос может помочь, если сценарии VB возможны, так как он добавляет некоторые функции преобразования системного часового пояса Windows в Excel: