Как рассчитать часы в Excel: 7 проверенных способов с формулами и примерами

Работа с временными данными в Microsoft Excel — одна из самых востребованных задач среди бухгалтеров, HR-специалистов и менеджеров проектов. Неверный расчёт отработанных часов может привести к ошибкам в зарплате, нарушению трудового законодательства или срыву дедлайнов. Но даже опытные пользователи часто сталкиваются с проблемами: Excel упорно "не видит" формат времени, выдаёт странные числа вместо часов или округляет значения до целых суток.

В этой статье мы разберём 7 способов расчёта часов — от элементарного вычитания до автоматизированных формул для ночных смен и переработок. Вы узнаете, как избежать типичных ошибок (например, когда 25:30 превращается в 1:30), как учитывать обеденные перерывы и как настроить Excel для работы с временными интервалами больше 24 часов. Все примеры актуальны для Excel 2019–2026 и Excel Online.

Особое внимание уделим трём ключевым сценариям:

  • 📊 Простой расчёт — разница между двумя временными метками (приход/уход).
  • 🌙 Ночные смены — когда рабочий день пересекает полночь (например, с 22:00 до 6:00).
  • ⏱️ Суммирование часов — как сложить время из нескольких ячеек без потери минут.
📊 Что вам чаще всего нужно рассчитывать в Excel?
Рабочие часы сотрудников
Время выполнения задач
Ночные смены
Переработки
Другое

1. Базовый расчёт: разница между двумя временами

Начнём с самого простого — вычитания одного времени из другого. Предположим, у вас есть таблица с колонками Приход и Уход, и нужно посчитать, сколько часов сотрудник провёл на работе.

Шаг 1. Убедитесь, что ячейки с временем имеют правильный формат. Выделите колонки с данными, нажмите правой кнопкой → Формат ячеек → выберите Время. Оптимальный вариант — 13:30 (без указания секунд).

Шаг 2. В третьей колонке (например, Отработано) введите формулу:

=B2-A2

где B2 — время ухода, A2 — время прихода.

Проблема: Если результат отображается как ###### или 01.01.1900, значит, Excel воспринял данные как дату. Исправьте формат ячейки с результатом на Время или [ч]:мм (для интервалов >24 часов).

2. Учёт ночных смен (когда время пересекает полночь)

Классическая ошибка: если сотрудник работал с 22:00 до 06:00, Excel покажет -16:00 вместо 8:00. Это происходит потому, что программа по умолчанию считает время в пределах одних суток.

Решение 1. Используйте формулу с условием:

=ЕСЛИ(B2

Здесь 1 добавляет полные сутки (24 часа), если время ухода (B2) меньше времени прихода (A2).

Решение 2. Примените формат [ч]:мм к ячейке с результатом до ввода формулы. Тогда даже отрицательное значение отобразится корректно (например, -8:00 станет 16:00, что равно 8 часам).

⚠️ Внимание: Если в таблице есть строки с пустыми ячейками (например, сотрудник не вышел на работу), добавьте в формулу проверку на ошибки:
=ЕСЛИОШИБКА(ЕСЛИ(B2

3. Вычитание обеденного перерыва

Допустим, сотрудник работал с 09:00 до 18:00 с перерывом на обед с 13:00 до 14:00. Чтобы посчитать чистое рабочее время, используйте формулу:

= (B2-A2) - (D2-C2)

где:

  • A2 — приход, B2 — уход,
  • C2 — начало перерыва, D2 — конец перерыва.

Если длительность перерыва фиксированная (например, 1 час), упростите формулу:

= (B2-A2) - ВРЕМЯ(1; 0; 0)

Критическая ошибка: если не вычесть перерыв, суммарное время будет завышено, что приведёт к неверному начислению оплаты за переработку.

Ячейки с временем перерыва имеют формат "Время"

Формула учитывает все перерывы (если их несколько)

Результат отображается в формате [ч]:мм

-->

4. Суммирование часов по нескольким дням

Чтобы сложить время из нескольких ячеек (например, недельная наработка), используйте функцию СУММ. Но есть нюанс: Excel по умолчанию суммирует время как долю суток (например, 12:00 = 0.5). Поэтому:

  • 🔢 Примените к ячейке с суммой формат [ч]:мм.
  • 📌 Или умножайте каждое значение на 24, чтобы конвертировать часы в десятичный формат:
    =СУММ((B2:B10-A2:A10)*24)

Пример таблицы с суммированием:

ДатаПриходУходОтработано
10.05.202609:0018:00=B2-A2
11.05.202609:3019:15=B3-A3
12.05.202610:0017:45=B4-A4
Итого:=СУММ(C2:C4) (формат [ч]:мм)
⚠️ Внимание: Если сумма превышает 24 часа, но отображается некорректно (например, 12:00 вместо 36:00), проверьте формат ячейки. Он должен быть [ч]:мм, а не стандартный Время.

5. Расчёт переработок (свыше 8 часов в день)

По Трудовому кодексу РФ, сверхурочная работа оплачивается в повышенном размере. Чтобы автоматизировать расчёт переработок:

  1. Посчитайте общее отработанное время за день (см. раздел 1).
  2. Вычтите норму (8 часов) с учётом перерыва:
    =ЕСЛИ(C2>ВРЕМЯ(8;0;0); C2-ВРЕМЯ(8;0;0); 0)

    где C2 — ячейка с отработанным временем.

Для ежемесячного отчёта используйте:

=СУММЕСЛИ(C2:C31; ">8:00"; C2:C31)-СЧЁТЕСЛИ(C2:C31; ">8:00")*8
Как учитывать переработки при сменном графике?

Если норма рабочего времени отличается от 8 часов (например, 12-часовые смены), замените ВРЕМЯ(8;0;0) на ВРЕМЯ(12;0;0). Для гибкого графика создайте отдельную колонку с нормой часов по каждому дню и ссылайтесь на неё в формуле:

=ЕСЛИ(C2>D2; C2-D2; 0)

где D2 — ячейка с нормой для конкретного дня.

6. Автоматизация с помощью Power Query

Если у вас сотни строк с данными, ручной расчёт станет кошмаром. Power Query (вкладка ДанныеПолучить данные) позволяет:

  • 🔄 Объединять данные из нескольких файлов.
  • ⏱️ Автоматически рассчитывать разницу между временем.
  • 📅 Группировать данные по месяцам/отделам.

Пример запроса для расчёта часов:

  1. Загрузите таблицу в Power Query (ДанныеИз таблицы/диапазона).
  2. Добавьте пользовательский столбец с формулой:
    = [Уход] - [Приход]
  3. Измените тип данных нового столбца на Длительность.
  4. Загрузите результат обратно в Excel.

Преимущество метода: при обновлении исходных данных достаточно нажать Обновить все, и все расчёты пересчитаются автоматически.

7. Типичные ошибки и как их избежать

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

  • Ошибка #ЗНАЧ!: Возникает, если ячейка содержит текст вместо времени. Проверьте данные на наличие пробелов или невидимых символов функцией =ЧИСТ().
  • Некорректное округление: Excel может округлять секунды. Чтобы этого избежать, используйте формат [ч]:мм:сс.
  • Сброс на 00:00: Если результат формулы — 0:00, хотя время отработано, проверьте, не установлен ли в ячейке формат Общий.

Как проверить данные на ошибки:

=ЕТЕКСТ(A2)

Эта формула вернёт ИСТИНА, если в ячейке A2 текст вместо времени.

Если вам нужно конвертировать текстовое время (например, "9:30") в формат Excel, используйте:

=ВРЕМЯ(ЛЕВСИМВ(A2; НАЙТИ(":"; A2)-1); ПСТР(A2; НАЙТИ(":"; A2)+1; 2); 0)
⚠️ Внимание: При импорте данных из или других систем время может экспортироваться как текст. Всегда проверяйте формат ячеек после импорта!

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

Как посчитать часы между датами (например, с 10.05.2026 09:00 до 12.05.2026 18:00)?

Используйте формулу:

= (B2-A2)*24

где A2 и B2 — ячейки с датой и временем. Результат будет в часах (например, 57 вместо 2 дня 9 часов). Примените формат Общий к ячейке с формулой.

Почему Excel показывает ###### вместо времени?

Это означает, что ширина столбца недостаточна для отображения или ячейка имеет неверный формат. Растяните столбец или установите формат [ч]:мм.

Как посчитать только рабочие дни (исключая выходные)?

Используйте функцию ЧИСТРАБДНИ для подсчёта дней, а для часов — комбинацию с ЕСЛИ:

=ЕСЛИ(ИЛИ(ДЕНЬНЕД(A2)=7; ДЕНЬНЕД(A2)=1); 0; B2-A2)

где A2 — дата, B2 — время ухода.

Можно ли автоматически выделять переработки цветом?

Да, с помощью Условного форматирования:

  1. Выделите колонку с отработанным временем.
  2. Перейдите на вкладку ГлавнаяУсловное форматированиеСоздать правило.
  3. Выберите Форматировать только ячейки, которые содержат.
  4. Установите условие больше чем и введите 0:08:00 (8 часов).
  5. Задайте цвет заполнения (например, красный).

Как экспортировать таблицу с часами в Word без потери формата?

Скопируйте данные в Excel, затем в Word выберите Специальная вставкаТекст с разделителями табуляции. Это сохранит выравнивание, но формат времени придётся настроить вручную.