Excel: как сравнивать даты без времени

Часто вам может потребоваться сравнить две даты в Excel, игнорируя значения времени, связанные с датами.
К счастью, вы можете использовать функцию INT() в Excel, чтобы извлечь только дату из значения даты и времени, что позволяет легко сравнивать даты, игнорируя время.
В следующих примерах показано, как использовать эту функцию INT() в различных сценариях.
Пример 1: сравнение дат без времени
Предположим, у нас есть следующий список значений даты и времени в Excel, который показывает, когда разные люди подписались на гонку на 5 км, а также крайнюю дату регистрации:

Мы можем ввести следующую формулу в ячейку B2, чтобы сравнить дату регистрации с датой окончания:
=IF(INT( A2 )
Затем мы можем перетащить и заполнить эту формулу до каждой оставшейся ячейки в столбце B:

Эта формула сравнивает только дату в столбце A с датой окончания в ячейке D2.
Если дата в столбце A равна или предшествует дате в ячейке D2, формула возвращает Valid .
В противном случае формула возвращает Not Valid .
Пример 2: сравнение и подсчет дат без учета времени
Еще раз предположим, что у нас есть следующий список значений даты и времени в Excel, который показывает, когда разные люди подписались на гонку на 5 км, а также крайнюю дату регистрации:

Мы можем ввести следующую формулу в ячейку F2, чтобы подсчитать общее количество дат регистрации, которые равны или предшествуют дате отсечки:
=SUMPRODUCT((INT( A2:A10 )

Из вывода мы видим, что 5 полных дат в столбце A равны или предшествуют дате отсечки.
Используя функцию INT() , мы смогли сравнить только часть даты значений даты и времени в столбце A с датой отсечки.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в Excel:
Как в excel сравнить две даты больше меньше
Argument 'Topic id' is null or empty
Сейчас на форуме
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
| ООО "Планета Эксел" ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Как в экселе сравнить две даты?
В программе эксель даты можно сравнивать точно так же, как обычные числа. Рассмотрим несколько возможных вариантов.
Первый вариант. Самый простой, мы сравним больше первая дата второй или нет. Для этого в ячейке «А2» поставим обычно сравнение =A2>B2, ответ получим, что это «Истина», что означает правда. Вот как это будет выглядеть в программе эксель.

Точно также к этим датам можно применить знак меньше, равно и получать соответствующие ответы.

Второй вариант. Можно воспользовавшись функцией «Если», получать в качестве ответа непросто слова: истина или ложь, но и результат с определенным количеством разницы дат.
Для этого в ячейке «С2», напишем новую формулу: =ЕСЛИ(A2>B2;"Первая дата больше второй на"&" "&A2-B2&" "&"дней";"Первая дата меньше второй на"&" "&B2-A2&" "&"дней")

В функции «Если» мы сравниваем две даты и в зависимости от результаты выводим ответ, первая дата больше или меньше второй и на сколько дней. Для этого мы пользуемся специальным оператором &, который сцепляет в нужной последовательности текст, чтобы получить более оригинальный ответ.
Вычисление разности двух дат
Используйте функцию РАЗНДАТ, если нужно вычислить разницу двух дат. Сначала поместите дату начала в одну ячейку, а дату окончания — в другую. Затем введите формулу, например одну из следующих.
Предупреждение: Если значение нач_дата больше значения кон_дата, возникнет ошибка #ЧИСЛО!
Разница в днях

В этом примере дата начала находится в ячейке D9, а дата окончания — в ячейке E9. Формула находится в ячейке F9. Параметр "д" возвращает количество полных дней между двумя датами.
Разница в неделях

В этом примере дата начала находится в ячейке D13, а дата окончания — в ячейке E13. Параметр "д" возвращает количество дней. Но обратите внимание на /7 в конце. Это делит количество дней на 7, так как в неделе содержится 7 дней. Обратите внимание, что этот результат также должен быть представлен в числовом формате. Нажмите клавиши CTRL+1. Затем щелкните Числовой > Число десятичных знаков: 2.
Разница в месяцах

В этом примере дата начала находится в ячейке D5, а дата окончания — в ячейке E5. В формуле "м" возвращает количество полных месяцев между двумя днями.
Разница в годах

В этом примере дата начала находится в ячейке D2, а дата окончания — в ячейке E2. Параметр "г" возвращает количество полных лет между двумя днями.
Расчет возраста в накопленных годах, месяцах и днях
Вы также можете вычислить возраст или время работы другого человека. Результат может выглядеть так: "2 года, 4 месяца, 5 дней".
1. Используйте функцию РАЗНДАТ, чтобы найти общее количество лет.

В этом примере дата начала находится в ячейке D17, а дата окончания — в ячейке E17. В формуле параметр "г" возвращает количество полных лет между двумя днями.
2. Снова используйте функцию РАЗНДАТ с "гм", чтобы найти месяцы.

В другой ячейке используйте функцию РАЗНДАТ с параметром "гм". Параметр "гм" возвращает количество оставшихся месяцев с последнего полного года.
3. Используйте другую формулу для поиска дней.

Теперь нужно найти количество оставшихся дней. Для этого мы напишем формулу другого типа, показанную выше. Эта формула вычитает первый день окончания месяца (01.05.2016) из исходной даты окончания в ячейке E17 (06.05.2016). Вот как это делается: сначала функция ДАТА создает дату 01.05.2016. Она создается с помощью года в ячейке E17 и месяца в ячейке E17. 1 обозначает первый день месяца. Результатом функции ДАТА будет 01.05.2016. Затем мы вычитаем эту дату из исходной даты окончания в ячейке E17 (06.05.2016), в результате чего получается 5 дней.
Предупреждение: Не рекомендуется использовать аргумент "мд" функции РАЗНДАТ, так как он может вычислять неточные результаты.
4. Необязательно: объединение трех формул в одну.

Все три вычисления можно поместить в одну ячейку, как в этом примере. Используйте амперсанды, кавычки и текст. Эту формулу дольше вводить, но она содержит в себе все вычисления. Совет. Нажмите клавиши ALT+ВВОД, чтобы ввести разрывы строк в формулу. Это упрощает чтение. Кроме того, если вы не видите всю формулу, нажмите клавиши CTRL+SHIFT+U.
Скачивание примеров
Вы можете скачать образец книги со всеми примерами из этой статьи. Вы можете воспользоваться ими или создать собственные формулы.
Другие вычисления даты и времени
Вычисление разницы между сегодняшней и другой датой
Как показано выше, функция РАЗНДАТ вычисляет разницу между датой начала и датой окончания. Однако вместо ввода определенных дат в формуле можно также использовать функцию СЕГОДНЯ(). При использовании функции СЕГОДНЯ() Excel в качестве даты использует текущую дату компьютера. Имейте в виду, что эта переменная будет меняться при повторном открыть файле в будущем.

Обратите внимание, эта статья была написана 6 октября 2016 г.
Вычисление рабочих дней с праздниками или без них
Используйте функцию ЧИСТРАБДНИ.МЕЖД, если нужно вычислить количество рабочих дней между двумя датами. Вы также можете исключить выходные и праздники.
Прежде чем начать. Решите, нужно ли исключить даты праздников. При исключении введите список дат праздников в отдельной области или на отдельном листе. Поместите каждую дату праздника в собственную ячейку. Затем выделите эти ячейки и нажмите Формулы > Задать имя. Назовите диапазон МоиПраздники и нажмите ОК. Затем создайте формулу с помощью указанных ниже действий.
1. Введите дату начала и окончания.

В этом примере дата начала находится в ячейке D53, а дата окончания — в ячейке E53.
2. В другой ячейке введите формулу следующего вида.

Введите формулу, как в примере выше. Цифра 1 в формуле устанавливает субботы и воскресенья в качестве выходных и исключает их из общего количества.
Примечание. В Excel 2007 нет функции ЧИСТРАБДНИ.МЕЖД. Однако там есть функция ЧИСТРАБДНИ. Указанный выше пример будет выглядеть в Excel 2007 следующим образом: =ЧИСТРАБДНИ(D53;E53). Не нужно указывать цифру 1, так как функция ЧИСТРАБДНИ предполагает, что выходными являются суббота и воскресенье.
3. При необходимости измените цифру 1.

Если суббота и воскресенье не являются выходными днями, измените 1 на другое числовое значение из списка IntelliSense. Например, значение 2 устанавливает воскресенья и понедельники в качестве выходных дней.
Если вы используете Excel 2007, пропустите этот шаг. Функция ЧИСТРАБДНИ в Excel 2007 всегда предполагает, что выходными являются суббота и воскресенье.
4. Введите имя диапазона праздников.

Если вы создали имя диапазона праздников в разделе "Прежде чем начать" выше, введите его в конце следующим образом. Если у вас нет праздников, вы можете не использовать точку с запятой и МоиПраздники. Если вы используете Excel 2007, указанный выше пример будет выглядеть так: =ЧИСТРАБДНИ(D53;E53;MyHolidays).
Совет. Если вы не хотите указывать имя диапазона праздников, вместо этого вы можете ввести диапазон, например D35:E39. Или можно ввести в формулу каждый праздник. Например, если ваши праздники приходились на 1 и 2 января 2016 г., введите их следующим образом: =ЧИСТРАБДНИ.МЕЖД(D53;E53;1;). В Excel 2007 это будет выглядеть так: =ЧИСТРАБДНИ(D53;E53;)
Расчет затраченного времени
Вы можете вычислить затраченное время, вычитая одно время из другого. Сначала поместите время начала в одну ячейку, а время окончания — в другую. Вводите время полностью, включая час, минуты и пробел перед AM или PM. Ниже рассказывается, как это сделать.
1. Введите время начала и время окончания.

В этом примере время начала находится в ячейке D80, а время окончания — в ячейке E80. Введите час, минуты и пробел перед AM или PM.
2. Установите формат "ч:мм AM/PM".


Выберите обе даты и нажмите клавиши CTRL+1 (или +1 на компьютере Mac). Выберите вариант (все форматы) > ч:мм AM/PM, если он еще не установлен.
3. Вычтите два времени.

В другой ячейке вычтите ячейку времени начала из ячейки времени окончания.
4. Установите формат "ч:мм".


Нажмите клавиши CTRL+1 (или +1 на Mac). Выберите (все форматы) > ч:мм, чтобы результат не содержал AM и PM.
Расчет затраченного времени между двумя датами со временем
Чтобы вычислить время между двумя датами со временем, можно просто вычесть одно значение из другого. Однако необходимо применить форматирование к каждой ячейке, чтобы Excel возвращал нужный результат.
1. Введите две полные даты со временем.

В одной ячейке введите полную дату и время начала. А в другой ячейке введите полную дату и время окончания. Каждая ячейка должна содержать месяц, день, год, час, минуты, и пробел перед AM или PM.
2. Установите формат "14.03.12 1:30 PM".


Выберите обе ячейки и нажмите клавиши CTRL+1 (или +1 на компьютере Mac). Затем выберите Дата > 14.03.12 1:30 PM. Это не дата, которую вы установили, а просто пример того, как будет выглядеть формат. Обратите внимание, что в версиях до Excel 2016 этот формат может использовать другой пример даты, например 14.03.01 1:30 PM.
3. Вычтите два значения.

В другой ячейке вычтите ячейку даты и времени начала из даты и времени окончания. Скорее всего, результат будет выглядеть как число с десятичным знаком. Вы исправите это на следующем шаге.
4. Установите формат "[ч]:мм".


Нажмите клавиши CTRL+1 (или +1 на Mac). Выберите пункт (все форматы). В поле Тип введите [ч]:мм.