Расчет количества дней между датами в Excel
Чаще всего при работе с датами в таблице Excel возникает необходимость определения промежутка времени между ними, который измеряется днями. В Excel есть несколько способов выполнить эту задачу. Давайте посмотрим на них.
Расчет разности дат
Для правильной работы с датами необходимо сначала установить для ячеек соответствующий формат. В противном случае могут возникнуть проблемы с правильным отображением дат, что сделает невозможным их дальнейшую обработку.
По сути, Excel умеет самостоятельно определять формат ячейки после ввода в нее информации. Но этот механизм не всегда работает должным образом, поэтому стоит заранее установить формат ячейки или проверить, правильно ли его определила программа.
- Сначала выберите целевой диапазон ячеек, удерживая нажатой левую кнопку мыши.
- Щелкните выделенную область правой кнопкой мыши и в открывшемся контекстном меню выберите команду «Форматировать ячейки». Аналогичного результата можно добиться с помощью комбинации клавиш Ctrl + 1.
- Перед нами окно настройки формата ячейки:
- по умолчанию мы должны быть во вкладке «Число» (если нет, переключитесь на нее);
- в списке «Числовые форматы» найдите запись «Дата» и щелкните по ней;
- в поле «Тип» выберите нужный шаблон представления данных, на основании которого они будут отображаться на листе;
- нажмите ОК.
- Теперь все значения, введенные в ячейки выделенной области, будут интерпретироваться программой как данные в формате «Дата“.
Метод 1: использование формулы вычитания
Начнем, пожалуй, с самого простого: вычитая две даты, представленные в виде общей формулы.
- Вводим две даты, между которыми мы будем определять разницу в днях, в две разные ячейки ранее отформатированного диапазона.
- Теперь мы выбираем ячейку, в которой собираемся отобразить результат нашего расчета.
ВАЖНО: количество дней указывается простым целым числом, поэтому ячейка для его вывода должна иметь формат, отличный от «Дата» или «Общий». В противном случае результат будет отображаться в формате даты, что не позволит нам оценить правильность расчетов. Чтобы определить текущий формат ячейки, просто посмотрите на соответствующее поле, расположенное в разделе инструмента «Число» на ленте на вкладке «Главная“. - В нашем случае установлено значение «Дата». Чтобы изменить его, снова вызовите окно формата ячейки и установите «Общий» числовой формат в соответствии с описанным выше алгоритмом. Щелкните ОК, чтобы сохранить изменения.
- Теперь можно переходить непосредственно к расчетам:
- в последнюю ячейку вставляем знак “=“;
- кликните по ячейке с датой окончания (далее);
- введите с клавиатуры символ «-» (знак минус);
- щелкните ячейку с датой начала.
- Чтобы получить результат, нажмите клавишу Enter. В результате мы получаем целое число — количество дней между двумя датами.
Метод 2: функция РАЗНДАТ
Следующий способ — определить разницу между двумя датами с помощью функции DIITDATA.
Функция имеет следующий синтаксис: = ДАТА (начальная_дата; конечная_дата; единица).
Если с первыми двумя аргументами все понятно — их суть соответствует названию, то стоит остановиться подробнее на третьем («единице»), так как именно он позволяет варьировать результат использования функции выбора блока расчета разницы между датами:
- «D» — количество дней между датами;
- «M» — количество полных месяцев между датами;
- «Y» — количество полных лет между датами;
- «ГМ» — разница дат в месяцах;
- «MD» — разница между датами в днях, исключая месяцы и годы;
- «ГД» — это разница между датами в днях без учета лет.
В нашем случае мы покажем пример использования аргумента «YD», поскольку цель вычисления — определить количество дней между датами в году.
Основное отличие от простого вычитания одной даты из другой заключается в порядке аргументов функции: дата начала (предыдущая дата) выбирается в качестве первого аргумента, а дата окончания (следующая) выбирается в качестве второго. Опишем алгоритм расчета ниже.
- Выбираем целевую ячейку, проверяем ее формат как описано выше.
- Описанная функция отсутствует в функции мастера, поэтому мы вручную вставляем ее в ячейку, строго придерживаясь синтаксиса.
- Нажмите Enter и проверьте результат. Как мы видим, это похоже на то, что мы получили с помощью простой формулы вычитания. Значит все сделано правильно.
Метод 3: функция ЧИСТРАБДНИ для определения количества рабочих дней
Третий описанный метод позволяет рассчитать количество дней с дополнительным условием без учета нерабочих дней (выходных и праздничных дней.
В этом методе используется функция ЧИСТРАБДНИ со следующим синтаксисом: = ЧИСТРАБДНИ (начальная_дата; конечная_дата; [праздники]).
Первые два аргумента такие же, как для функции РАЗДАТ. Последний аргумент является необязательным, то есть функция будет работать без его указания. Однако именно он позволяет учитывать в критериях расчета нерабочие праздничные дни, поскольку по умолчанию из общей суммы будут удалены только субботы и воскресенья.
Переходим к расчетам:
- Поскольку описанная функция присутствует в списке мастера функций, мы будем использовать ее для большей ясности: мы позиционируемся в ячейке, в которой мы будем выводить результат, и нажимаем кнопку «Вставить функцию» (fx), которая находится рядом с слева от строки формул.
- В открывшемся окне мастера:
- выберите категорию «Полный алфавитный список”;
- найдите и щелкните в списке операторов в строке «ДНИ УБОРКИ”;
- нажмите ОК.
- Перед нами появится окно аргументов функции. Здесь вы можете вручную ввести адреса ячеек или, находясь в поле для заполнения значений аргумента, щелкнуть нужную ячейку на листе. После выбора даты начала и окончания, а также указания выходного дня (адреса ячейки) нажмите ОК.
- Предположим, что на этот раз мы не установили окончательный формат ячейки как «Общий». Затем мы получаем результат, отображаемый в виде даты.
- Поэтому необходимо дважды проверить формат по описанному выше алгоритму и изменить его на «Общий”.
Заключение
Используя методы, описанные выше, довольно легко подсчитать количество дней между двумя датами, как с дополнительными критериями, так и без них. Формула вычитания и функция DATODATA идеально подходят для простого подсчета дней, а функция WORKDAYS.NET поможет рассчитать количество рабочих дней между датами. Окончательный выбор зависит от поставленной перед пользователем задачи.