Как рассчитать затраченное время в Excel: 7 рабочих способов с примерами

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

Эта статья не просто покажет, как вычесть одно время из другого. Мы разберём 7 реальных сценариев — от простого тайм-трекинга до расчёта рабочего времени с учётом графиков 2/2 или скользящих смен. Вы узнаете, почему Excel иногда показывает `######` вместо результата, как обойти ограничение на отрицательное время, и почему функция РАЗНДАТ не всегда подходит для табеля учёта. А в конце — чек-лист для проверки своих формул и FAQ по типичным ошибкам.

Если вы когда-нибудь получали в отчёте вместо нормального времени набор решёток или дату 1900 года — эта инструкция для вас. Мы обойдёмся без макросов и VBA, используя только встроенные функции Excel (актуально для версий 2010–2023 и Excel Online). Примеры будут с формулами, скриншотами логики и готовыми файлами для скачивания (ссылка в конце статьи).

📊 Для чего вам нужно рассчитывать время в Excel?
Учёт рабочих часов сотрудников
Трекер личной продуктивности
Логистика/доставка
Проектный менеджмент
Другое

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

Начнём с самого простого: у вас есть время начала и окончания задачи в формате чч:мм, и нужно узнать продолжительность. Например, встреча началась в 9:30, закончилась в 11:15 — сколько это по времени?

Шаг 1. Введите данные в две ячейки (например, A2 и B2) и примените к ним формат Время (выделите ячейки → ГлавнаяФормат ячеек → категория Время). Если Excel автоматически не распознаёт время, введите его через двоеточие (9:30, а не 9.30).

Шаг 2. В третьей ячейке (C2) используйте простую формулу вычитания:

=B2-A2

Результат — 1:45 (1 час 45 минут).

⚠️ Внимание: Если после вычитания вы видите дату (например, 01.01.1900) или число типа 0,0729, значит, у ячейки с результатом неправильный формат. Исправьте его на чч:мм вручную.

  • 📌 Частая ошибка: Ввод времени через точку (9.30) вместо двоеточия. Excel воспримет это как дату.
  • ⏱️ Совет: Для удобства используйте формат [ч]:мм (в ручном формате ячеек), чтобы часы отображались корректно при значениях > 24.
  • 🔄 Альтернатива: Функция =ВРЕМЯЧАС(B2-A2) вернёт только часы, а =ВРЕМЯМИН(B2-A2) — только минуты.

2. Расчёт времени с учётом даты (ночные смены, многодневные задачи)

Ситуация усложняется, если задача начинается в один день, а заканчивается в другой. Например, ночная смена с 22:00 15 мая до 6:00 16 мая. Простое вычитание =B2-A2 даст ошибку или отрицательное значение.

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

Введите в ячейки не только время, но и дату (например, 15.05.2026 22:00). Формула вычитания сработает корректно:

=B2-A2

Результат — 8:00 (8 часов).

Решение 2: Функция РАЗНДАТ (если нужны дни, часы, минуты по отдельности).

=РАЗНДАТ(A2; B2; "h")

Вернёт 8 (часов). Другие единицы измерения:

  • "d" — дни
  • "m" — месяцы
  • "y" — годы

⚠️ Внимание: РАЗНДАТ игнорирует формат ячейки и всегда возвращает число. Чтобы получить результат в формате времени, используйте комбинацию:

=ВРЕМЯ(РАЗНДАТ(A2;B2;"h"); РАЗНДАТ(A2;B2;"m"); РАЗНДАТ(A2;B2;"s"))
Формула Результат Применение
=B2-A2 8:00 Простое вычитание с датами
=РАЗНДАТ(A2;B2;"h") 8 Часы в числовом формате
=ТЕКСТ(B2-A2;"[ч]:мм") 8:00 Форматирование >24 часов
=ЕСЛИ(B2 1 Проверка на ночную смену

3. Учёт перерывов и нерабочего времени

Допустим, сотрудник работал с 9:00 до 18:00, но у него был часовый перерыв на обед. Как вычесть перерыв из общего времени? Или как посчитать только нормативные часы (например, с 8:00 до 17:00, а остальное — сверхурочные)?

Способ 1: Вычитание фиксированного перерыва.

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

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

Где ВРЕМЯ(1;0;0) — это 1 час.

Способ 2: Динамический перерыв (если время начала/окончания перерыва известно).

Добавьте в таблицу столбцы для времени начала и конца перерыва (C2 и D2), затем:

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

Способ 3: Учёт только рабочих часов (например, с 8:00 до 17:00).

Используйте функцию МАКС и МИН, чтобы "обрезать" нерабочее время:

=МИН(B2;ВРЕМЯ(17;0;0)) - МАКС(A2;ВРЕМЯ(8;0;0))

Эта формула вернёт время только в интервале 8:00–17:00, даже если сотрудник пришёл в 7:30 или ушёл в 18:30.

Введены ли время начала и конца перерыва?|

Применён ли формат времени к ячейкам с перерывами?|

Учтено ли, что перерыв не может быть отрицательным? (используйте =ЕСЛИ(D2)|

Проверены ли границы рабочего дня (если нужны только нормативные часы)?-->

4. Расчёт сверхурочных и ночных часов

По Трудовому кодексу РФ ночные часы (с 22:00 до 6:00) оплачиваются в повышенном размере. Как их автоматически посчитать в Excel?

Шаг 1. Определите границы ночного времени в отдельных ячейках (например, E1=ВРЕМЯ(22;0;0), F1=ВРЕМЯ(6;0;0)).

Шаг 2. Используйте формулу для расчёта ночных часов:

=ЕСЛИ(B2<=F1; МАКС(0; МИН(B2;F1) - МАКС(A2;E1));

ЕСЛИ(A2>=E1; МИН(B2;F1+1) - МАКС(A2;E1);

(F1-A2) + (B2-E1)))

Эта формула учитывает 3 сценария: смена полностью в дневное время, полностью в ночное, или пересекает 00:00.

Для сверхурочных (например, всё, что свыше 8 часов в день):

=ЕСЛИ((B2-A2) > ВРЕМЯ(8;0;0); (B2-A2) - ВРЕМЯ(8;0;0); 0)

⚠️ Внимание: При расчёте ночных часов не забывайте, что F1+1 добавляет полные сутки (24 часа) к времени 6:00, чтобы корректно обработать случаи, когда смена заканчивается после 6:00 следующего дня.

5. Обработка отрицательного времени и ошибок

Excel по умолчанию не умеет работать с отрицательным временем (например, если время окончания раньше времени начала). Вместо результата вы увидите ######. Решается это двумя способами:

Способ 1: Использовать систему дат 1904 года.

Перейдите в Файл → Параметры → Дополнительно и поставьте галочку Использовать систему дат 1904 года. Теперь отрицательное время будет отображаться корректно.

Способ 2: Формула с проверкой.

=ЕСЛИ(B2

Эта формула добавляет полные сутки (1 день) к отрицательному результату, преобразуя его в положительное время.

Типичные ошибки и их исправление:

  • 🚫 ######: Слишком узкий столбец или отрицательное время. Растяните столбец или примените Способ 1/2 выше.
  • 🚫 Дата 1900 года: Неправильный формат ячейки. Измените на чч:мм.
  • 🚫 #ЗНАЧ!: Ячейка содержит текст вместо времени. Проверьте ввод данных.
Почему Excel показывает 1900 год?

Excel хранит даты как числа, где 1 = 1 января 1900 года. Когда вы вводите время без даты (например, 9:30), Excel воспринимает его как 0.3958 (доля суток). Если к ячейке применён формат Общий или Дата, вы увидите 01.01.1900 или дробное число.

6. Автоматизация: табель учёта рабочего времени

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

Дата Время начала Время окончания Перерыв Отработано Ночные часы Сверхурочные
15.05.2026 09:00 18:30 1:00 = (C2-B2) - D2 =ЕСЛИ(И(B2>=ВРЕМЯ(22;0;0);C2<=ВРЕМЯ(6;0;0)); C2-B2; 0) =ЕСЛИ(E2>ВРЕМЯ(8;0;0); E2-ВРЕМЯ(8;0;0); 0)

Как улучшить шаблон:

  • 📅 Автозаполнение дат: В первой ячейке столбца A введите стартовую дату, затем протяните маркер автозаполнения вниз.
  • 🔍 Условное форматирование: Выделите красным ячейки, где отработано >8 часов (Главная → Условное форматирование → Правила выделения ячеек).
  • 📊 Итоги: Добавьте строку с функциями СУММ для подсчёта общего времени по неделе/месяцу.

7. Продвинутые сценарии: скользящий график, суммирование времени

Скользящий график (например, 2 через 2).

Если сотрудник работает по графику "день/ночь/отдых/отдых", формула расчёта времени усложняется. Здесь поможет комбинация ЕСЛИ и И:

=ЕСЛИ(И(A2="День"; B2>=ВРЕМЯ(8;0;0); B2<=ВРЕМЯ(20;0;0));

B2-A2;

ЕСЛИ(И(A2="Ночь"; ИЛИ(B2<=ВРЕМЯ(6;0;0); B2>=ВРЕМЯ(22;0;0)));

B2-A2;

0))

Где A2 — тип смены ("День"/"Ночь").

Суммирование времени >24 часов.

Если нужно сложить время из нескольких ячеек (например, неделя), используйте:

=СУММ(диапазон) * 24

Затем примените пользовательский формат [ч]:мм.

Расчёт среднего времени.

Для анализа продуктивности (например, среднее время на задачу):

=СРЗНАЧ(диапазон) * 24

Формат ячейки — ч:мм.

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

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

Это происходит в трёх случаях:

  1. Столбец слишком узкий — растяните его.
  2. Результат вычитания отрицательный (например, 6:00 - 9:00). Используйте систему дат 1904 года или формулу с проверкой.
  3. Неправильный формат ячейки. Примените формат чч:мм или [ч]:мм.
Как посчитать время в минутах для тарификации?

Умножьте разницу на 1440 (количество минут в сутках):

= (B2-A2) * 1440

Затем примените формат 0 (целое число).

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

Да, используйте формат чч:мм:сс и вводите время с секундами (9:30:15). Формулы остаются теми же.

Как автоматически заполнять время прихода/ухода?

Для этого потребуется VBA или Power Query. Без макросов можно использовать комбинацию СЕГОДНЯ() и ТДАТАВР() для фиксации текущего времени:

=ЕСЛИ(A2=""; ТДАТАВР(); A2)

Но это потребует ручного обновления (нажатия F9).

Почему функция РАЗНДАТ иногда даёт неверный результат?

РАЗНДАТ считает полные интервалы. Например, =РАЗНДАТ("1.01.2026"; "2.01.2026"; "m") вернёт 0 (месяцев), хотя прошёл 1 день. Для точного расчёта времени используйте вычитание (=B2-A2).