Расчёт заработной платы по отработанному времени — одна из самых распространённых задач в Excel для бухгалтеров, HR-специалистов и руководителей. Даже если у вас есть 1С или другая учётная система, часто приходится делать сверку или предварительные расчёты вручную. В этой статье разберём, как автоматизировать процесс с помощью формул, избежать ошибок при работе с временными интервалами и оформить таблицу так, чтобы она сама считала оклад, премии и удержания.
Особенность расчёта по времени в том, что здесь важно учитывать не только количество часов, но и их тип: дневные, ночные, праздничные, сверхурочные. Excel позволяет гибко настраивать логику под любые условия — от простой почасовой оплаты до сложных схем с коэффициентами. Мы покажем готовые решения для разных сценариев, включая работу с табелем, округлением времени и проверкой данных на корректность.
Если вы никогда не работали с временными функциями в Excel, не переживайте: статья содержит пошаговые инструкции с картинками и файлами-примерами (их можно скачать в конце). А для опытных пользователей мы подготовили продвинутые приёмы — например, как автоматически выделять цветом ячейки с переработками или строить графики нагрузки сотрудников.
1. Подготовка таблицы: структура данных для расчёта ЗП
Прежде чем приступать к формулам, нужно правильно организовать исходные данные. От структуры таблицы зависит 80% успеха: если она построена хаотично, даже самые продвинутые функции не спасут от ошибок.
Минимальный набор столбцов для расчёта по времени:
- 📅 Дата — день, за который ведётся учёт (формат
ДД.ММ.ГГГГ). - ⏰ Время начала — когда сотрудник приступил к работе (формат
ЧЧ:ММ). - ⏳ Время окончания — когда работа завершилась.
- ⏸️ Перерыв — продолжительность обеда или других пауз (если они не оплачиваются).
- 👤 Сотрудник — ФИО или табельный номер.
- 💰 Часовая ставка — сумма, которую человек получает за 1 час работы.
Дополнительно можно добавить столбцы для:
- 🌙 Ночные часы (с 22:00 до 6:00) — они оплачиваются по повышенному тарифу.
- 🎉 Праздничные/выходные дни — здесь тоже действуют коэффициенты.
- ⚡ Сверхурочные — часы, отработанные сверх нормы (обычно после 8 часов в день).
Пример правильно оформленной таблицы:
| Дата | Сотрудник | Начало | Конец | Перерыв | Часовая ставка (₽) | Всего часов | Ночные часы | Сумма к оплате |
|---|---|---|---|---|---|---|---|---|
| 10.05.2026 | Иванов И.И. | 09:00 | 18:30 | 01:00 | 500 | =... | =... | =... |
| 11.05.2026 | Петров П.П. | 22:00 | 07:00 | 00:30 | 600 | =... | =... | =... |
⚠️ Внимание: Никогда не храните дату и время в одной ячейке в формате ДД.ММ.ГГГГ ЧЧ:ММ. Excel воспринимает это как текст, и вы не сможете использовать временные функции. Разделяйте их на два столбца!
2. Базовые формулы: как посчитать отработанные часы
Самая простая задача — вычислить количество часов между началом и концом рабочего дня с учётом перерыва. Для этого есть несколько способов.
Способ 1: Простое вычитание времени
Если начало и конец работы указаны в одном дне (например, с 9:00 до 18:00), используйте формулу:
=КОНЕЦ - НАЧАЛО - ПЕРЕРЫВ
Где:
КОНЕЦ— ячейка с временем окончания работы.НАЧАЛО— ячейка с временем начала.ПЕРЕРЫВ— ячейка с продолжительностью обеда.
Пример для первой строки таблицы выше:
=B2 - A2 - C2
Результат будет в формате времени (например, 8:30). Чтобы перевести его в часы, умножьте на 24:
=(B2 - A2 - C2) * 24
Способ 2: Работа через полночь (ночная смена)
Если смена пересекает 00:00 (например, с 22:00 до 7:00), простое вычитание даст ошибку. Здесь поможет функция ЕСЛИ:
=ЕСЛИ(B2 < A2; (B2 + 1) - A2 - C2; B2 - A2 - C2) * 24
Логика:
- Если время окончания (
B2) меньше времени начала (A2), значит смена перешла на следующий день. Тогда к времени окончания прибавляем1(полные сутки). - Иначе вычисляем разницу как обычно.
Ячейки с временем имеют формат ЧЧ:ММ|Формула умножена на 24 для перевода в часы|Учтён перерыв (если он есть)|Для ночных смен используется условие ЕСЛИ
-->
Критическая ошибка: если вы забыли умножить результат на 24, Excel покажет время в формате "0,35" вместо "8,4" (что соответствует 8 часам 24 минутам). Это приведёт к неверному расчёту зарплаты!
3. Учёт ночных, праздничных и сверхурочных часов
Теперь усложним задачу: добавим коэффициенты для ночных часов, праздничных дней и сверхурочной работы. Для этого понадобятся дополнительные столбцы и функции.
Ночные часы (с 22:00 до 6:00)
Создайте столбец Ночные часы и используйте формулу:
=МАКС(0; МИН(ВРЕМЯ(6;0;0); КОНЕЦ) - МАКС(ВРЕМЯ(22;0;0); НАЧАЛО)) * 24
Разберём по частям:
ВРЕМЯ(6;0;0)— это 6:00 утра.ВРЕМЯ(22;0;0)— 22:00 вечера.МИН(ВРЕМЯ(6;0;0); КОНЕЦ)— определяем, что наступило раньше: 6:00 или конец смены.МАКС(ВРЕМЯ(22;0;0); НАЧАЛО)— что наступило позже: 22:00 или начало смены.
Если смена полностью укладывается в ночное время (например, с 23:00 до 5:00), формула вернёт количество ночных часов. Если нет — ноль.
Праздничные и выходные дни
Для учёта праздничных дней:
- Создайте отдельный лист в книге Excel с перечнем праздников (столбец
A— даты, столбецB— название праздника). - В основной таблице добавьте столбец Тип дня и используйте функцию
ВПР:
=ЕСЛИОШИБКА(ВПР([@Дата]; Праздники!A:A; 1; ЛОЖЬ); "Рабочий")
Где:
[@Дата]— ссылка на текущую дату в строке (если таблица оформлена как "умная таблица").Праздники!A:A— диапазон с датами праздников на отдельном листе.
Затем в столбце Коэффициент пропишите:
=ЕСЛИ([@[Тип дня]]="Праздник"; 2; 1)
Где 2 — это двойной тариф за работу в праздник (подставьте свой коэффициент).
Сверхурочные часы
Сверхурочными считаются часы, отработанные сверх нормы (обычно 8 часов в день). Добавим столбец Сверхурочные:
=ЕСЛИ([@[Всего часов]] > 8;[@[Всего часов]] - 8; 0)
И столбец Коэффициент сверхурочных (например, 1.5 для первых 2 часов и 2 для последующих):
=ЕСЛИ([@[Сверхурочные]] <= 2; 1,5; 2)
1.25|1.5|2|Другой|Не используем-->
4. Расчёт зарплаты с учётом всех коэффициентов
Теперь соберём всё воедино. Формула для столбца Сумма к оплате будет выглядеть так:
=[@[Всего часов]] [@[Часовая ставка]] [@[Коэффициент]] +
[@[Ночные часы]] [@[Часовая ставка]] (Коэффициент_ночных - 1) +
[@[Сверхурочные]] [@[Часовая ставка]] ([@[Коэффициент сверхурочных]] - 1)
Где:
Коэффициент_ночных— это отдельная ячейка с значением (например,1,5).[@[Коэффициент сверхурочных]] - 1— вычитаем 1, потому что обычные часы уже учтены в первой части формулы.
Пример для строки с ночной сменой (22:00–7:00, ставка 600 ₽/час, коэффициент ночных часов 1.5):
- Всего часов: 8 (с учётом перерыва 0:30).
- Ночных часов: 7 (с 22:00 до 5:00, но смена закончилась в 7:00).
- Сумма:
8 600 1 + 7 600 0,5 = 4800 + 2100 = 6900 ₽.
⚠️ Внимание: Если в вашей компании действуют региональные коэффициенты (например, для Севера), добавьте их в формулу как отдельный множитель. Не забывайте, что НДФЛ и другие удержания рассчитываются уже после применения всех надбавок!
5. Автоматизация: как сделать таблицу "умной"
Чтобы сэкономить время, настройте в Excel автоматические проверки и подсказки.
Условное форматирование для ошибок
Выделите диапазон с временем начала и окончания, затем:
- Перейдите на вкладку
Главная → Условное форматирование → Создать правило. - Выберите
Использовать формулу для определения форматируемых ячеек. - Введите формулу для проверки, что время окончания раньше начала:
=$B2<$A2
Настройте заливку красным цветом для таких ячеек.
Выпадающие списки для сотрудников и типов дней
Чтобы избежать опечаток в ФИО или типах дней:
- Создайте на отдельном листе список сотрудников (столбец
A) и типов дней (столбецB). - В основной таблице выделите столбец Сотрудник, перейдите в
Данные → Проверка данных. - В поле
Тип данныхвыберитеСписок, вИсточникукажите=Сотрудники!$A:$A.
Динамические диаграммы для анализа
Чтобы визуализировать нагрузку сотрудников:
- Выделите данные по датам и часам.
- Перейдите на вкладку
Вставка → Вставить графики выберитеГистограмма с группировкой. - Настройте оси: по горизонтали — даты, по вертикали — часы.
Как добавить линию среднего значения на график?
1. Кликните правой кнопкой по графику и выберите "Выбрать данные".
2. Нажмите "Добавить" в разделе "Элементы легенды".
3. В поле "Имя ряда" введите "Среднее", в "Значения" укажите диапазон со средними значениями (например, =СРЗНАЧ(диапазон_часов)).
4. На вкладке "Макет" добавьте линию тренда.
6. Округление времени и обработка исключений
В реальной жизни время часто округляется до 15 или 30 минут. Например, если сотрудник отработал 7 часов 5 минут, по правилам компании это может округляться до 7 часов или до 7,25.
Округление до 15 минут
Используйте функцию ОКРУГЛТ:
=ОКРУГЛТ([@[Всего часов]] 24 / (15/60); 0) (15/60)
Формула работает так:
- Умножаем часы на 24, чтобы перевести в доли дня.
- Делим на
15/60(четверть часа), чтобы привести к целым числам. - Округляем до ближайшего целого (
ОКРУГЛТ). - Умножаем обратно на
15/60, чтобы вернуть формат времени.
Исключения: больничные, отпуска, прогулы
Добавьте столбец Статус с выпадающим списком:
- 🏥 Больничный
- 🏖️ Отпуск
- ❌ Прогул
- ✅ Отработано
Затем модифицируйте формулу расчёта зарплаты:
=ЕСЛИ([@Статус]="Отработано";
[@[Всего часов]] [@[Часовая ставка]] [@[Коэффициент]];
0)
Для больничных можно добавить отдельный расчёт по среднему заработку:
=ЕСЛИ([@Статус]="Больничный";
Средний_заработок_в_день Дни_больничного Коэффициент_больничного;
...)
7. Продвинутые приёмы: сводные таблицы и Power Query
Если у вас большая база данных (например, за год), ручной расчёт станет кошмаром. Здесь помогут сводные таблицы и Power Query.
Сводная таблица для анализа ЗП по сотрудникам
Как создать:
- Выделите исходную таблицу с данными.
- Перейдите на вкладку
Вставка → Сводная таблица. - В поле
Строкиперетащите Сотрудник и Месяц (предварительно добавьте столбец с месяцем через=МЕСЯЦ([@Дата])). - В поле
Значенияперетащите Сумма к оплате (функцияСумма).
Power Query для импорта данных из 1С или табеля
Если данные хранятся в другой системе (например, в 1С:Зарплата), их можно автоматически загружать в Excel:
- Перейдите на вкладку
Данные → Получить данные → Из файла → Из Excel(или другой источник). - Выберите нужный файл и лист.
- В редакторе Power Query настройте фильтры и преобразования (например, удалите пустые строки, замените форматы дат).
- Нажмите
Закрыть и загрузить.
Преимущество Power Query: при обновлении данных в источнике достаточно кликнуть Обновить все на вкладке Данные, и таблица в Excel пересчитается автоматически.
Macros для массовой обработки
Если вам приходится ежемесячно выполнять одни и те же действия (например, разбивать ФИО на фамилию, имя, отчество), запишите макрос:
- Перейдите на вкладку
Вид → Макросы → Записать макрос. - Выполните нужные действия вручную (например, текст по столбцам для ФИО).
- Остановите запись и сохраните макрос.
Теперь эти действия будут выполняться в один клик.
8. Типичные ошибки и как их избежать
Даже опытные пользователи Excel иногда допускают ошибки при расчёте зарплаты. Вот самые распространённые:
| Ошибка | Причина | Как исправить |
|---|---|---|
| Неверное количество часов | Формат ячеек с временем установлен как "Общий" или "Текстовый" | Выделите ячейки → ПКМ → Формат ячеек → выберите Время |
| Отрицательные часы | В формуле не учтён переход через полночь | Используйте ЕСЛИ с проверкой КОНЕЦ < НАЧАЛО |
| Неправильный расчёт ночных часов | Формула не учитывает, что смена может начинаться до 22:00 или заканчиваться после 6:00 | Добавьте проверки с МАКС и МИН, как в разделе 3 |
| Ошибки округления | Используется ОКРУГЛ вместо ОКРУГЛТ |
ОКРУГЛТ округляет до ближайшего кратного, а ОКРУГЛ — до указанного количества знаков |
| Неверные коэффициенты | В формуле жёстко прописаны значения (например, 1.5 вместо ссылки на ячейку) | Вынесите коэффициенты в отдельные ячейки и ссылайтесь на них |
⚠️ Внимание: Если вы используете Google Таблицы вместо Excel, учтите, что там нет функцииОКРУГЛТ. Замените её на комбинациюОКРУГЛи умножения/деления, как показано в официальной документации.
Перед отправкой расчётов в бухгалтерию всегда делайте проверку:
- 🔍 Просмотрите крайние значения (максимальную и минимальную ЗП) — они не должны сильно выбиваться из средних.
- 📊 Постройте сводную таблицу по сотрудникам и проверьте, что суммы совпадают с табелем.
- 🖥️ Используйте
Проверку данных(Данные → Проверка), чтобы ограничить ввод времени (например, только в форматеЧЧ:ММ).
FAQ: Ответы на частые вопросы
Как в Excel посчитать зарплату, если ставка не часовая, а дневная?
Если у сотрудника фиксированный оклад за день (например, 2000 ₽/день), используйте формулу:
=ЕСЛИ(ИЛИ([@Статус]="Отработано";[@Статус]="Праздник"); Дневная_ставка * [@[Коэффициент]]; 0)
Где Дневная_ставка — это отдельная ячейка с суммой за день. Для праздников коэффициент обычно ≥ 2.
Можно ли автоматически подтягивать праздничные дни из интернета?
Да, с помощью Power Query. Например, можно импортировать календарь праздников с сайта data.gov.ru:
- Перейдите в
Данные → Получить данные → Из других источников → Из веб. - Вставьте URL страницы с календарём праздников.
- В редакторе Power Query преобразуйте данные в таблицу и загрузите в Excel.
Обновляйте данные раз в год перед расчётом зарплаты за январь.
Как посчитать зарплату за месяц с учётом аванса?
Добавьте в таблицу столбец Аванс и модифицируйте формулу:
=[@[Сумма к оплате]] - [@Аванс]
Если аванс фиксированный (например, 40% от оклада), используйте:
=[@[Сумма к оплате]] * 0,6
Для удобства можно создать отдельный лист с ведомостью на выплату аванса и окончательного расчёта.
Что делать, если в табеле указаны только часы, без точного времени начала и конца?
Если у вас уже есть столбец с количеством часов (например, из табеля), пропустите шаг с вычитанием времени и сразу умножайте часы на ставку:
=[@[Всего часов]] [@[Часовая ставка]] [@[Коэффициент]]
Но учтите, что в этом случае вы не сможете автоматически рассчитать ночные или сверхурочные часы — их придётся вводить вручную.
Как экспортировать расчёт зарплаты в Word для печати?
Сделайте следующее:
- Выделите таблицу с расчётом.
- Скопируйте её (
Ctrl + C). - Откройте Word и вставьте как
Сохранить исходное форматирование(иконка с кистью в меню вставки). - Добавьте заголовок, подписи и отправляйте на печать.
Для регулярных отчётов сохраните шаблон в Word с полями для подстановки данных.