Как сделать отсчет дней от заданной даты в excel
Для работы с датами в Excel в разделе с функциями определена категория «Дата и время». Рассмотрим наиболее распространенные функции в этой категории.
Как Excel обрабатывает время
Программа Excel «воспринимает» дату и время как обычное число. Электронная таблица преобразует подобные данные, приравнивая сутки к единице. В результате значение времени представляет собой долю от единицы. К примеру, 12.00 – это 0,5.
Значение даты электронная таблица преобразует в число, равное количеству дней от 1 января 1900 года (так решили разработчики) до заданной даты. Например, при преобразовании даты 13.04.1987 получается число 31880. То есть от 1.01.1900 прошло 31 880 дней.
Этот принцип лежит в основе расчетов временных данных. Чтобы найти количество дней между двумя датами, достаточно от более позднего временного периода отнять более ранний.
Пример функции ДАТА
Построение значение даты, составляя его из отдельных элементов-чисел.
Синтаксис: год; месяц, день.
Все аргументы обязательные. Их можно задать числами или ссылками на ячейки с соответствующими числовыми данными: для года – от 1900 до 9999; для месяца – от 1 до 12; для дня – от 1 до 31.
Если для аргумента «День» задать большее число (чем количество дней в указанном месяце), то лишние дни перейдут на следующий месяц. Например, указав для декабря 32 дня, получим в результате 1 января.
Пример использования функции:
Зададим большее количество дней для июня:
Примеры использования в качестве аргументов ссылок на ячейки:
Функция РАЗНДАТ в Excel
Возвращает разницу между двумя датами.
- начальная дата;
- конечная дата;
- код, обозначающий единицы подсчета (дни, месяцы, годы и др.).
Способы измерения интервалов между заданными датами:
- для отображения результата в днях – «d»;
- в месяцах – «m»;
- в годах – «y»;
- в месяцах без учета лет – «ym»;
- в днях без учета месяцев и лет – «md»;
- в днях без учета лет – «yd».
В некоторых версиях Excel при использовании последних двух аргументов («md», «yd») функция может выдать ошибочное значение. Лучше применять альтернативные формулы.
Примеры действия функции РАЗНДАТ:
В версии Excel 2007 данной функции нет в справочнике, но она работает. Хотя результаты лучше проверять, т.к. возможны огрехи.
Функция ГОД в Excel
Возвращает год как целое число (от 1900 до 9999), который соответствует заданной дате. В структуре функции только один аргумент – дата в числовом формате. Аргумент должен быть введен посредством функции ДАТА или представлять результат вычисления других формул.
Пример использования функции ГОД:
Функция МЕСЯЦ в Excel: пример
Возвращает месяц как целое число (от 1 до 12) для заданной в числовом формате даты. Аргумент – дата месяца, который необходимо отобразить, в числовом формате. Даты в текстовом формате функция обрабатывает неправильно.
Примеры использования функции МЕСЯЦ:
Примеры функций ДЕНЬ, ДЕНЬНЕД и НОМНЕДЕЛИ в Excel
Возвращает день как целое число (от 1 до 31) для заданной в числовом формате даты. Аргумент – дата дня, который нужно найти, в числовом формате.
Чтобы вернуть порядковый номер дня недели для указанной даты, можно применить функцию ДЕНЬНЕД:
По умолчанию функция считает воскресенье первым днем недели.
Для отображения порядкового номера недели для указанной даты применяется функция НОМНЕДЕЛИ:
Дата 24.05.2015 приходится на 22 неделю в году. Неделя начинается с воскресенья (по умолчанию).
В качестве второго аргумента указана цифра 2. Поэтому формула считает, что неделя начинается с понедельника (второй день недели).
Для указания текущей даты используется функция СЕГОДНЯ (не имеет аргументов). Чтобы отобразить текущее время и дату, применяется функция ТДАТА ().
Дата и время в Excel – это числа сформатированные специальным образом. Датой является целая часть числа, а время (часы и минуты) – это дробная часть.
По умолчанию число 1 соответствует дате 01 января 1900 года. То есть каждая дата – это количество дней прошедших от 01.01.1900. На данном уроке детально рассмотрим даты, а на следующих уроках – время.
Как в Excel посчитать дни между датами?
Так как дата является числом, значит можно проводить с ним математические вычислительные и расчетные операции. Посчитать количество дней между двумя датами Excel не составляет особых проблем. Для наглядного примера сначала выполним сложение, а потом вычитание дат. Для этого:
- На чистом листе в ячейку А1 введите текущею дату нажав CTRL+;.
- В ячейке A2 введите промежуточный период в днях, например 127.
- В ячейку A3 введите формулу:=A1+A2.
Обратите внимание, формат «Дата» автоматически присвоился для ячейки A3. Не сложно догадаться, чтобы посчитать разницу в датах в Excel нужно от новейшей даты отнять старшую дату. В ячейке B1 введите формулу:=A3-A1. Соответственно мы получаем количество дней между этими двумя датами.
Вычисление возраста по дате рождения в Excel
Теперь мы научимся вычислять возраст по дате рождения:
- На новый лист в ячейки A1:A3 введите даты: 18.04.1985; 17.08.1977; 08.12.1992
- В ячейки B1:B3 проставьте текущею дату.
- Теперь нужно воспользоваться функцией по преобразованию количества дней в количество лет. Для этого вручную введите в диапазон C1:C3 следующее значение: =РАЗНДАТ(A1;B1;"y").
Таким образом, применение функции позволило нам точно вычислить возраст по дате рождения в Excel.
Внимание! Чтобы перевести дни в года не достаточно формулы: =(B1-A1)/365. Более того даже если мы знаем что 1 сутки = 0,0027397260273973 года, то формула:=(B1-A1)*0,0027397260273973 так же не даст точного результата.
Дни в года наиболее точно преобразует функция:=РАЗНДАТ(). Английская версия =DATEDIF(). Вы не найдете ее в списке мастера функций (SHIFT+F3). Но если просто введете ее в строку формул, то она сработает.
Функция РАЗНДАТ поддерживает несколько параметров:
Параметр | Описание |
"d" | Количество полных дней |
"m" | Количество полных месяцев |
"y" | Количество полных лет |
"ym" | Количество полных месяцев без учета лет |
"md" | Количество дней без учета месяцев и лет |
"yd" | Количество дней без учета лет |
Проиллюстрируем пример использования нескольких параметров:
Внимание! Чтобы функция:=РАЗНДАТ() работала без ошибок, следите за тем, чтобы начальная дата была старше конечной даты.
Ввод даты в ячейку Excel
Целью данного урока является пример математических операций с датами. Так же, мы убедимся, что для Excel тип данных дата является числом.
Заполните таблицу датами, так как показано на рисунке:
Разные способы ввода дат. В столбце А – способ ввода, а в столбце B – результат отображения.
Обратите внимание, что в формате ячеек по умолчанию «Общий», даты также как и число выравниваются по правой стороне, а текст по левой. Значение в ячейке B4 распознается программой как текст.
В ячейке B7 Excel сам присвоил текущий год (сейчас 2015-ый) по умолчанию. Это видно при отображении содержимого ячеек в строке формул. Обратите внимание, как изначально вводилось значение в A7.
Вычисление даты Excel
На чистом листе в ячейки А1:B1 введите 01.01.1900, а в ячейках A2:B2 вводим 01.01.1901. Теперь меняем формат ячеек на «числовой» в выделенном диапазоне B1:B2. Для этого можно нажать комбинацию клавиш CTRL+SHIFT+1.
B1 теперь содержит число 1, а B2 – 367. То есть прошел один високосный год (366 дней) и 1 день.
Способ отображения даты можно задать с помощью диалогового окна «Формат ячеек». Для его вызова нажмите: CTRL+1. На закладке «Число» выберите в списке «Числовые форматы» - «Дата». В разделе «Тип» отображаются самые популярные форматы для отображения дат.
На следующем уроке мы на готовых примерах будем работать со временем и периодами суток.
Функция ДЕНЬ возвращает день, который соответствует определенной дате. Результатом работы функции является число из диапазона от 1 до31.
Функция ДЕНЬНЕД возвращает день недели, который соответствует определенной дате. Результат работы данной функции – это число из диапазона от 1 до 7 (единица соответствует воскресенью, а семь – субботе).
Функция ДНИ возвращает числовое значение, характеризующее разницу дней между двумя заданными датами.
Особенности синтаксической записи функции ДЕНЬ, ДЕНЬНЕД и ДНИ в Excel
Функция ДЕНЬ имеет следующий синтаксис:
Принимает на вход единственный параметр дата, который соответствует дате, день которой требуется определить.
Функция ДЕНЬНЕД имеет следующую синтаксическую запись:
Описание аргументов функции:
- Дата – обязательный параметр, соответствующей дате, день недели которой требуется определить. Данный параметр имеет особенности, описанные в примечаниях к предыдущей функции.
- Тип – число в диапазоне от 1 до 3, указывающее на то, какой день недели считается первым (в некоторых странах первый день недели – воскресенье, в нашей – понедельник). Если тип=1, первым днем недели будет считаться воскресенье, тип=2 – понедельник. Если тип=3, результатом работы функции ДЕНЬНЕД будет число из диапазона от 0 до 6, где 0 соответствует понедельнику.
Примечение: в некоторых случаях вместо чисел 1,2…7 требуется вывод названия дня недели (понедельник, вторник… воскресенье). Для этого можно составить такую таблицу:
И затем выводить текстовое значение, соответствующее номеру дня недели:
Однако для данной задачи можно использовать следующую функцию: =ТЕКСТ(A2;"dddd").
Результатом выполнения данной функции является текст «воскресенье». Если требуется краткая запись дня недели (Сб, Пн, Ср), в качестве второго параметра следует указать «dddd».
Функция ДНИ используется для расчета количества дней между двумя указанными датами и имеет следующий синтаксис: =ДНИ(кон_дата;нач_дата).
Описание аргументов данной функции:
- Кон_дата – обязательный параметр, характеризующий дату окончания какого-либо события.
- Нач_дата – обязательный параметр, характеризующий дату начала определенного события для выполнения расчета.
Примеры расчетов в Excel с использованием функций ДЕНЬ, ДЕНЬНЕД и ДНИ
Для решения используем следующую формулу: =B3-ДЕНЬ(B3)+1.
Аналогично заполним остальные колонки. В результате получим новый столбец с правильными датами выдачи зарплаты:
Определение рабочих и выходных дней по формуле ДЕНЬНЕД
Пример 2. Программный продукт считывает данные из таблицы Excel и использует их в своих расчетах. Одна из ячеек содержит данные в формате Дата, соответствующие дате получения посылки. Необходимо определить, соответствует ли указанная дата рабочему дню недели (с Пн по Пт) и вернуть логическое значение “true” или “false” (если выходной день) для дальнейшей обработки программой.
Исходная таблица имеет следующий вид:
Для определения дня недели будем использовать ДЕНЬНЕД, первым аргументом которой является данные из ячейки «Дата прибытия», а вторым – 2 (отсчет дней недели начинается с единицы, которая соответствует понедельнику). Для решения используем следующую функцию:
Функция ЕСЛИ проверяет условие: находится ли полученное в результате работы функции ДЕНЬНЕД значение в интервале от 1 до 5 включительно и возвращает соответствующий результат (true или false).
Вычислим значения для остальных полей данных:
Как видно, все даты являются рабочими днями недели.
Зачем нужна функция ДНИ в Excel?
Пример 3. Общеизвестно, что ВОВ была начата 22 июня 1941 года и закончилась 9 мая 1945 года. Необходимо определить, сколько дней проходили военные действия.
Внесем исходные данные в таблицу:
Для расчета используем следующую формулу: =ДНИ(B3;A3).
Получаем следующий результат:
То есть, военные действия длились на протяжении 1417 дней.
Обратите внимание! Любая дата в Excel – это число дней, прошедших начиная от даты 01.01.1900г. Подробнее описано в статье: Как вычислить дату в Excel? Поэтому можно свободно использовать такую простую формулу без функций: =B3-A3.
Как видно на рисунке результат аналогичен. Фактически функция ДНИ в Excel не нужна вообще.
Рассчитайте дату в будущем на основе заданной даты с помощью формулы
Чтобы получить дату в будущем, которая на 100 дней позже текущей даты, примените следующую простую формулу:
Введите следующую формулу в пустую ячейку, чтобы найти результат, а затем перетащите дескриптор заполнения вниз к ячейкам, чтобы получить дату в будущем, как показано на следующем снимке экрана:
Вычислить дату в будущем, исключить выходные, на основе заданной даты с помощью формулы
Если вы хотите рассчитать будущую дату без учета выходных, используйте эту формулу:
1. Введите приведенную ниже формулу в пустую ячейку, а затем перетащите ручку заполнения в ячейки, в которых вы хотите применить формулу, и отобразится пятизначное число, см. Снимок экрана:
2. Затем вы должны преобразовать пятизначное число на сегодняшний день, нажав Короткое свидание из Общие раскрывающийся список в Главная вкладку, см. снимок экрана:
Вычислить дату в будущем, исключить выходные и праздничные дни на основе заданной даты с помощью формулы
1. Введите приведенную ниже формулу в пустую ячейку и перетащите ручку заполнения, чтобы применить формулу к другим ячейкам, после чего отобразятся некоторые числа, см. Снимок экрана:
Внимание: В приведенной выше формуле A2 это текущая дата, на основе которой вы хотите рассчитать дату в будущем, 100 это количество дней, которое вы хотите добавить к дате, E2: E5 это праздничные ячейки, которые необходимо исключить, измените их по своему усмотрению.
2. Затем выберите ячейку с формулой и нажмите Короткое свидание из Общие выпадающий список под Главная вкладка для преобразования числа в формат даты, см. снимок экрана:
Рассчитайте дату в будущем на основе заданной даты с помощью мощной функции
Если вам нужно рассчитать дату в будущем, добавив несколько дней, недель, месяцев или лет, Kutools for ExcelАвтора Помощник по дате и времени функция может оказать вам услугу.
Советы: Чтобы применить это Помощник по дате и времени функция, во-первых, вы должны скачать Kutools for Excel, а затем быстро и легко примените эту функцию.
После установки Kutools for Excel, пожалуйста, сделайте следующее:
1. Выберите ячейку, в которой вы хотите разместить вычисленный результат, и нажмите Кутулс > Формула Помощник > Помощник по дате и времени, см. снимок экрана:
2. В Помощник по дате и времени диалоговом окне выполните следующие операции:
- Выберите Добавить из файла Тип раздел;
- Затем щелкните, чтобы выбрать ячейку, на основе которой вы хотите рассчитать дату в будущем;
- Наконец, введите количество лет, месяцев, недель или дней, которые вы хотите добавить для данной даты.
3. Затем нажмите OK кнопку, и вы получите дату в будущем. А затем перетащите ручку заполнения, чтобы заполнить формулу в другие нужные ячейки, см. Снимок экрана:
Формула Excel: вычисление дней, часов, минут, секунд между двумя датами
Обычно в Excel мы используем формулы для подсчета разницы между двумя датами в днях или разницы между двумя датами. Однако в некоторых особых случаях нам может потребоваться получить дни, часы, минуты и секунды между двумя датами, в этом руководстве представлена формула для решения этой задачи.
Если вы хотите следовать этому руководству, загрузите пример электронной таблицы.
Общая формула:
INT(end_datetime-start_datetime)&" days "&TEXT(end_datetime-start_datetime,"h"" hrs ""m"" mins ""s"" secs""") |
аргументы
End_datetime, start_datetime: the two dates that you to calculate the difference between. |
Ошибка
Возвращаемое значение
Эта формула возвращает текстовое значение.
Как работает эта формула
Чтобы узнать разницу между двумя датами в ячейках B3 и C3, используйте следующую формулу:
Нажмите Enter ключ для получения результата.
объяснение
Функция INT: Функция INT возвращает целую часть десятичного числа.
Поскольку дата хранится как серийное целое число в Excel, а время хранится как серийное десятичное число, которое меньше 1 в Excel, а datetime сохраняется как серийное десятичное число, например, datetime 12/1/2019 13:23:11 хранится в Excel как 43800.5577662037. Здесь функция INT извлекает целую числовую часть разницы между двумя датами, чтобы получить разницу в днях.
ТЕКСТ функция: Эта функция используется для преобразования числа в текст в указанном формате.
&: Это соединитель, который соединяет результаты каждой части формулы.
Функции: Чтобы получить общее количество дней, часов, минут и секунд между набором начальной и конечной дат, вы можете адаптировать формулу с помощью функции СУММПРОИЗВ:
= INT (СУММПРОИЗВ (концы-начало)) & "дни" & ТЕКСТ (СУММПРОИЗВ (концы-начало), "ч" "часы" "м" "мин" "")
Аргумент end - это диапазон дат окончания, start - это диапазон ячеек с датами начала, например, диапазон C3: C5 содержит даты окончания, B3: B5 содержит даты начала, используйте следующую формулу:
= INT (СУММПРОИЗВ (C3: C5-B3: B5)) & "дни" & ТЕКСТ (СУММПРОИЗВ (C3: C5-B3: B5), "ч" "часы" "м" "мин" "")
Нажмите Enter ключ.
Относительные формулы
В этом руководстве представлена формула для быстрого расчета количества дней, оставшихся в месяце в Excel.
Иногда вам может потребоваться узнать, сколько дней осталось до истечения срока годности каждого продукта питания. В Excel есть формула, которая поможет вам быстро получить оставшиеся дни.
Здесь в этом руководстве представлена формула для быстрого расчета оставшихся дней между двумя датами.
Он предоставляет формулу, которая использует функцию MOD для расчета сетевого времени с перерывами в Excel.
Относительные функции
Тест на указанные условия, затем возвращает соответствующие значения
Преобразуйте текст в число.
МЕСЯЦ используется для получения месяца в виде целого числа (от 1 до 12) от даты.
Функция ДЕНЬ получает день в виде числа (от 1 до 31) от даты
Функция ГОД возвращает год на основе заданной даты в формате 4-значного серийного номера.
Лучшие инструменты для работы в офисе
Kutools for Excel - поможет вам выделиться из толпы
Хотите быстро и безупречно выполнять свою повседневную работу? Kutools for Excel предлагает мощные расширенные функции 300 (объединение книг, сумма по цвету, разделение содержимого ячеек, дата преобразования и т. Д.) И экономия 80% времени для вас.
Читайте также: