Как поменять время в Excel: от формата до формул

Почему Excel неправильно отображает время и как это исправить

Вы когда-нибудь сталкивались с ситуацией, когда вводите в ячейку 14:30, а Excel упорно показывает 02.01.1900 14:30 или вовсе преобразует значение в десятичную дробь? Это не баг программы, а особенность работы с временными данными. Дело в том, что Microsoft Excel хранит даты и время как последовательные числа: целые значения отвечают за дни (начиная с 1 января 1900 года), а дробная часть — за время внутри суток. Например, 0,5 в формате времени отобразится как 12:00.

Проблема усложняется, когда вы импортируете данные из других систем (1С, баз данных, CSV-файлов), где время может быть записано в нестандартном формате. Или когда нужно не просто отобразить время, а произвести с ним вычисления: прибавить 2 часа к текущему времени, посчитать разницу между двумя временными метками или автоматически обновлять таймштамп при изменении данных. В этой статье мы разберём все способы работы со временем — от базового форматирования до сложных формул с учетом часовых поясов.

Способ 1: Ручной ввод времени в правильном формате

Самый простой метод — ввести время непосредственно в ячейку. Но здесь есть нюансы:

  • ⏰ Вводите время через двоеточие: 9:30 или 14:45:22 (часы:минуты:секунды).
  • 📅 Если нужно указать дату и время вместе, используйте пробел или запятую: 15.05.2026 14:30.
  • ⚠️ Избегайте точек в качестве разделителя (например, 9.30) — Excel воспримет это как десятичную дробь.

После ввода нажмите Enter. Если ячейка отобразила время в неверном формате (например, как дату), измените формат:

  1. Выделите ячейку правой кнопкой → Формат ячеек (или нажмите Ctrl+1).
  2. Вкладка Число → категория Время.
  3. Выберите подходящий формат (например, 13:30:55).

Способ 2: Автоматическое заполнение времени функциями СЕЙЧАС() и ТДАТА()

Для динамического отображения текущего времени используйте встроенные функции:

  • =СЕЙЧА() — возвращает текущую дату и время, обновляется при каждом пересчёте листа.
  • =ТДАТА() — возвращает только текущую дату (время будет 00:00:00).
  • =ВРЕМЯ(часы; минуты; секунды) — создаёт статическое время (например, =ВРЕМЯ(14;30;0)).

Пример использования:

=СЕЙЧА()          → 15.05.2026 16:45:22

=ТДАТА()+ВРЕМЯ(9;0;0) → 15.05.2026 9:00:00

⚠️ Внимание: Функция СЕЙЧА() может замедлить работу книги, если используется в тысячах ячеек. Для статического времени лучше использовать ВРЕМЯ() или вводить значение вручную.
📊 Как часто вы используете функции времени в Excel?
Ежедневно
Несколько раз в неделю
Рядом
Никогда

Способ 3: Изменение времени через формулы (прибавить/вычесть часы, минуты)

Чтобы модифицировать время, используйте арифметические операции или специализированные функции:

ЗадачаФормулаПримерРезультат
Прибавить 2 часа=A1+ВРЕМЯ(2;0;0)=ВРЕМЯ(10;0;0)+ВРЕМЯ(2;0;0)12:00:00
Вычесть 30 минут=A1-ВРЕМЯ(0;30;0)=ВРЕМЯ(14;30;0)-ВРЕМЯ(0;30;0)14:00:00
Получить разницу во времени=B1-A1 (формат ячейки — [ч]:мм:сс)=ВРЕМЯ(16;0;0)-ВРЕМЯ(9;30;0)6:30:00
Округлить до ближайшего часа=ОКРУГЛТ(A1; "1:00")=ОКРУГЛТ(ВРЕМЯ(14;25;0); "1:00")14:00:00

Для корректного отображения разницы во времени (например, более 24 часов) используйте пользовательский формат:

  1. Выделите ячейку с разницей.
  2. Формат ячеекДругие форматы.
  3. Введите [ч]:мм:сс (квадратные скобки вокруг ч позволяют отображать значения >24).

Убедитесь, что ячейки имеют формат Время|Используйте ВРЕМЯ() для статических значений|Для динамического времени применяйте СЕЙЧА()|Округляйте результаты до нужной точности-->

Способ 4: Преобразование текста в время (например, "14-30" → 14:30)

Если время записано в нестандартном текстовом формате (например, 14-30, 2pm, 14ч30м), используйте комбинацию функций для преобразования:

  • Для формата "чч-мм":
    =ВРЕМЯ(ЛЕВСИМВ(A1;2); ПРАВСИМВ(A1;2); 0)

    Пример: 14-3014:30:00.

  • Для формата "2pm":
    =ЕСЛИ(ПРАВСИМВ(A1;2)="pm"; ВРЕМЯ(ЛЕВСИМВ(A1;1)+12; 0; 0); ВРЕМЯ(ЛЕВСИМВ(A1;1); 0; 0))

    Пример: 2pm14:00:00, 9am9:00:00.

⚠️ Внимание: При импорте данных из CSV время в формате чч:mm:ss может преобразоваться в дату. Чтобы избежать этого, импортируйте файл через Данные → Из текста и на шаге 3 выберите столбец с временем → укажите формат DMY или MDY (в зависимости от источника).

Способ 5: Работа с часовыми поясами (UTC, GMT+3 и т.д.)

Excel не поддерживает часовые пояса напрямую, но их можно эмулировать с помощью формул. Например, чтобы конвертировать время из UTC в GMT+3:

=A1 + ВРЕМЯ(3; 0; 0)  

Для обратного преобразования (из GMT+3 в UTC):

=A1 - ВРЕМЯ(3; 0; 0)

Если нужно учитывать переход на зимнее/летнее время, используйте функцию ЕСЛИ с проверкой даты:

=A1 + ВРЕМЯ(

ЕСЛИ(И(МЕСЯЦ(A1)>=3; МЕСЯЦ(A1)<=10); 3; 2);

0;

0

)

Как Excel хранит дату и время?

Внутри Excel дата и время представляются как число с дробной частью, где:

- Целая часть = количество дней с 1 января 1900 года (например, 1 = 01.01.1900, 45000 ≈ май 2023).

- Дробная часть = доля суток (0,5 = 12:00, 0,75 = 18:00).

Это позволяет легко производить арифметические операции: прибавлять дни, вычитать часы и т.д.

Типичные ошибки и их решения

Даже опытные пользователи сталкиваются с проблемами при работе со временем в Excel. Вот самые распространённые ошибки и способы их исправления:

ОшибкаПричинаРешение
###### в ячейкеСлишком большое значение времени (например, >24 часов) при стандартном формате.Используйте пользовательский формат [ч]:мм:сс.
#ЗНАЧ! в формулеПопытка вычесть большее время из меньшего (например, 9:00 - 10:00).Используйте ЕСЛИОШИБКА или проверяйте порядок значений.
Время отображается как датаНеправильный формат ячейки или импорт данных.Выделите ячейку → Формат ячеекВремя.
Функция СЕЙЧА() не обновляетсяАвтоматический пересчёт отключён.Перейдите в Формулы → Параметры вычислений → Автоматически.

Критическая особенность: Excel не поддерживает отрицательное время. Если вам нужно посчитать разницу, где первое время больше второго (например, 23:00 - 1:00), используйте конструкцию:

=ЕСЛИ(A1

Где 1 — это 24 часа в формате Excel (1 день = 1).

FAQ: Ответы на частые вопросы

Как в Excel отобразить время в формате "14 часов 30 минут" вместо "14:30"?

Используйте пользовательский формат:

  1. Выделите ячейку → Формат ячеекДругие форматы.
  2. В поле Тип введите: [ч] "часов" мм "минут".

Для отображения секунд добавьте: [ч] "часов" мм "минут" сс "секунд".

Почему при копировании времени из Excel в Word оно превращается в число?

Это происходит потому, что Word не распознаёт формат времени Excel. Решения:

  • Скопируйте время как Значения (правый клик → Специальная вставка → Значения).
  • Преобразуйте время в текст с помощью функции =ТЕКСТ(A1; "ч:мм").
Как посчитать количество рабочих часов между двумя временными метками?

Используйте формулу с учётом рабочего дня (например, с 9:00 до 18:00):

=МАКС(0; МИН(B1; ВРЕМЯ(18;0;0)) - МАКС(A1; ВРЕМЯ(9;0;0)))

Где A1 — время начала, B1 — время окончания.

Можно ли в Excel установить автоматическое обновление времени каждую минуту?

Да, но для этого потребуется макрос:

  1. Нажмите Alt+F11, чтобы открыть редактор VBA.
  2. Вставьте код:
    Private Sub Worksheet_Calculate()
    

    Application.OnTime Now + TimeValue("00:01:00"), "UpdateTime"

    End Sub

    Sub UpdateTime()

    Range("A1").Value = Now

    End Sub

  3. Запустите макрос UpdateTime вручную один раз.

⚠️ Макрос будет работать только при открытой книге.

Как в Excel отобразить время в формате "утро/день/вечер/ночь"?

Используйте функцию ЕСЛИ с проверкой часа:

=ЕСЛИ(ЧАС(A1)<6; "Ночь";

ЕСЛИ(ЧАС(A1)<12; "Утро";

ЕСЛИ(ЧАС(A1)<18; "День"; "Вечер")))