Как получить текущий часовой пояс и отобразить его в ячейке Excel?
При работе с электронными таблицами Excel, особенно в условиях совместной или международной работы, важно знать точный часовой пояс, установленный в используемой системе. Отображая текущий системный часовой пояс непосредственно в ячейке Excel, вы обеспечиваете точность времязависимых вычислений, отчетов или сравнения данных — особенно если файлы могут передаваться пользователям из разных регионов. К сожалению, Excel не предоставляет встроенной функции для прямого получения информации о часовом поясе системы в ячейке.
Получение текущего часового пояса и отображение его в ячейке с помощью пользовательской функции
Получение текущего часового пояса и отображение его в ячейке с помощью пользовательской функции
Чтобы извлечь и отобразить текущий часовой пояс вашей системы прямо в ячейке Excel, воспользуйтесь пользовательской функцией (UDF), написанной на VBA. Это практичное решение, особенно если вам регулярно требуется такая информация внутри книги. Ниже — пошаговая инструкция:
Примечание: Этот метод работает наилучшим образом, если в вашей среде Excel включены макросы и разрешено выполнение кода VBA. Он считывает региональные параметры напрямую из системы Windows, настроенной на вашем компьютере.
1. Нажмите одновременно клавиши Alt+F11. Откроется окно редактора Microsoft Visual Basic для приложений (VBA).
2. В редакторе VBA найдите на левой панели проект и выберите Вставка > Модуль. Это добавит новый модуль в вашу книгу, куда можно ввести собственный код. Аккуратно скопируйте и вставьте следующий код VBA в открывшееся окно модуля:
Код VBA: получение текущего часового пояса в Excel
Function GetTimeZoneAtPresent() As String
'Updated by Extendoffice 20180814
Dim xObjIs, xObjI
On Error GoTo ER
Set xObjIs = GetObject("winmgmts:\\.\root\cimv2").ExecQuery("Select * From Win32_TimeZone")
If xObjIs.Count = 1 Then
For Each xObjI In xObjIs
If Len(xObjI.Caption) > 1 Then
GetTimeZoneAtPresent = xObjI.Caption
Exit Function
Else
GetTimeZoneAtPresent = "Null"
Exit Function
End If
Next
End If
ER:
GetTimeZoneAtPresent = "Failed"
End Function Обязательно скопируйте весь приведённый выше код. Перед запуском макросов или пользовательской функции убедитесь, что настройки макросов разрешают выполнение кода. Если появится ошибка или предупреждение безопасности, измените настройки макросов через меню Файл > Параметры > Центр управления > Параметры центра управления > Параметры макросов.
3. После вставки кода нажмите Alt+Q, чтобы закрыть редактор VBA и вернуться в Excel.
4. Выберите любую ячейку, в которой нужно отобразить часовой пояс, введите формулу =GetTimeZoneAtPresent() и нажмите Enter. Текущий часовой пояс вашей системы немедленно появится в выбранной ячейке.
Этот метод особенно эффективен для шаблонов автоматизированной отчетности и информационных панелей, которые передаются коллегам в разных географических регионах, где критически важна ясность в отношении часовых поясов. Однако имейте в виду: пользовательские функции работают только при условии, что книга сохранена как файл с поддержкой макросов (.xlsm). Если вы передадите такой файл или отправите его пользователю с отключенными макросами, результат может не обновляться и не отображаться.
См. скриншот для наглядности:

Если результат не отображается или возникает ошибка, убедитесь, что:
- Ваши настройки макросов разрешают выполнение кода VBA.
- Код был полностью скопирован без каких-либо изменений.
- Вы не используете Excel Online или другую ограниченную среду (решения на основе VBA доступны только в настольной версии Excel).
Чтобы обновить или пересчитать информацию о часовом поясе, просто пересчитайте лист (нажмите)F9) или повторно введите формулу, если во время сеанса работы в Excel изменился часовой пояс системы.
Совет: Результат будет зависеть от настроек операционной системы вашего компьютера. При передаче файла каждый пользователь увидит время в своём собственном системном часовом поясе, так как формула пересчитается в его локальной среде Excel.

Раскройте магию Excel с помощью KUTOOLS AI
- Интеллектуальное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это доступно через простые команды.
- Пользовательские формулы: создавайте индивидуальные формулы для оптимизации рабочих процессов.
- Программирование на VBA: Пишите и внедряйте код VBA легко и без усилий.
- Анализ формул: Легко разбирайтесь даже в самых сложных формулах.
- Перевод текста: Ломайте языковые барьеры прямо в ваших таблицах.
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…
Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
- Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!
Все надстройки Kutools — один установщик
Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.
- Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек