Дата и время в 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. На закладке «Число» выберите в списке «Числовые форматы» — «Дата». В разделе «Тип» отображаются самые популярные форматы для отображения дат.
Скачать примеры вычисления даты в Excel
Читайте также: Функции для работы с датами в Excel
На следующем уроке мы на готовых примерах будем работать со временем и периодами суток.
Содержание
- Расчет количества дней
- Способ 1: простое вычисление
- Способ 2: функция РАЗНДАТ
- Способ 3: вычисление количеств рабочих дней
- Вопросы и ответы
Для выполнения определенных задач в Excel нужно определять, сколько дней прошло между некоторыми датами. К счастью, у программы имеются инструменты, которые способны решить данный вопрос. Давайте выясним, какими способами можно посчитать разность дат в Экселе.
Расчет количества дней
Прежде, чем начать работать с датами, нужно отформатировать ячейки под данный формат. В большинстве случаев, при введении комплекта символов, похожего на дату, ячейка сама переформатируется. Но лучше все-таки сделать это вручную, чтобы подстраховать себя от неожиданностей.
- Выделяем пространство листа, на котором вы планируете производить вычисления. Кликаем правой кнопкой мыши по выделению. Активируется контекстное меню. В нём выбираем пункт «Формат ячейки…». Как вариант, можно набрать на клавиатуре сочетание клавиш Ctrl+1.
- Открывается окно форматирования. Если открытие произошло не во вкладке «Число», то следует в неё перейти. В блоке параметров «Числовые форматы» выставляем переключатель в позицию «Дата». В правой части окна выбираем тот тип данных, с которым собираемся работать. После этого, чтобы закрепить изменения, жмем на кнопку «OK».
Теперь все данные, которые будут содержаться в выделенных ячейках, программа будет распознавать как дату.
Способ 1: простое вычисление
Проще всего вычислить разность дней между датами с помощью обычной формулы.
- Записываем в отдельные ячейки отформатированного диапазона даты, разность между которыми нужно вычислить.
- Выделяем ячейку, в которой будет выводиться результат. В ней должен быть установлен общий формат. Последнее условие очень важно, так как, если в этой ячейке стоит формат даты, то в таком случае и результат будет иметь вид «дд.мм.гг» или другой, соответствующий данному формату, что является некорректным итогом расчетов. Текущий формат ячейки или диапазона можно просмотреть, выделив его во вкладке «Главная». В блоке инструментов «Число» находится поле, в котором отображается данный показатель.
Если в нем стоит значение, отличное от «Общий», то в таком случае, как и в предыдущий раз, с помощью контекстного меню запускаем окно форматирования. В нем во вкладке «Число» устанавливаем вид формата «Общий». Жмем на кнопку «OK».
- В отформатированную под общий формат ячейку ставим знак «=». Кликаем по ячейке, в которой расположена более поздняя из двух дат (конечная). Далее жмем на клавиатуре знак «-». После этого выделяем ячейку, в которой содержится более ранняя дата (начальная).
- Чтобы увидеть, сколько времени прошло между этими датами, жмем на кнопку Enter. Результат отобразится в ячейке, которая отформатирована под общий формат.
Способ 2: функция РАЗНДАТ
Для вычисления разности в датах можно также применять специальную функцию РАЗНДАТ. Проблема в том, что в списке Мастера функций её нет, поэтому придется вводить формулу вручную. Её синтаксис выглядит следующим образом:
=РАЗНДАТ(начальная_дата;конечная_дата;единица)
«Единица» — это формат, в котором в выделенную ячейку будет выводиться результат. От того, какой символ будет подставлен в данный параметр, зависит, в каких единицах будет возвращаться итог:
- «y» — полные года;
- «m» — полные месяцы;
- «d» — дни;
- «YM» — разница в месяцах;
- «MD» — разница в днях (месяцы и годы не учитываются);
- «YD» — разница в днях (годы не учитываются).
Так как нам нужно рассчитать разницу в количестве дней между датами, то наиболее оптимальным решением будет применение последнего варианта.
Также нужно обратить внимание, что, в отличие от способа с применением простой формулы, описанного выше, при использовании этой функции на первом месте должна находиться начальная дата, а конечная – на втором. Иначе расчеты будут некорректными.
- Записываем формулу в выбранную ячейку, согласно её синтаксису, описанному выше, и первичным данным в виде начальной и конечной даты.
- Для того, чтобы произвести расчет, жмем кнопку Enter. После этого результат, в виде числа обозначающего количество дней между датами, будет выведен в указанную ячейку.
Способ 3: вычисление количеств рабочих дней
В Экселе также имеется возможность произвести вычисление рабочих дней между двумя датами, то есть, исключая выходные и праздничные. Для этого используется функция ЧИСТРАБНИ. В отличие от предыдущего оператора, она присутствует в списке Мастера функций. Синтаксис у этой функции следующий:
=ЧИСТРАБДНИ(нач_дата;кон_дата;[праздники])
В этой функции основные аргументы, такие же, как и у оператора РАЗНДАТ – начальная и конечная дата. Кроме того, имеется необязательный аргумент «Праздники».
Вместо него следует подставлять даты праздничных нерабочих дней, если таковые имеются за охватываемый период. Функция производит расчет всех дней указанного диапазона, исключая субботы, воскресенья, а также те дни, которые добавлены пользователем в аргумент «Праздники».
- Выделяем ячейку, в которой будет находиться итог вычисления. Кликаем по кнопке «Вставить функцию».
- Открывается Мастер функций. В категории «Полный алфавитный перечень» или «Дата и время» ищем элемент «ЧИСТРАБДНИ». Выделяем его и жмем на кнопку «OK».
- Открывается окно аргументов функции. Вводим в соответствующие поля дату начала и конца периода, а также даты праздничных дней, если таковые имеются. Жмем на кнопку «OK».
После указанных выше манипуляций в предварительно выделенной ячейке отобразится количество рабочих дней за указанный период.
Урок: Мастер функций в Excel
Как видим, программа Excel предоставляет своим пользователем довольно удобный инструментарий для расчета количества дней между двумя датами. При этом, если нужно рассчитать просто разницу в днях, то более оптимальным вариантом будет применение простой формулы вычитания, а не использование функции РАЗНДАТ. А вот если требуется, например, подсчитать количество рабочих дней, то тут на помощь придет функция ЧИСТРАБДНИ. То есть, как всегда, пользователю следует определиться с инструментом выполнения после того, как он поставил конкретную задачу.
Сложить или вычесть дни из даты
Допустим, ваш счет должен быть выставлен во вторую пятницу каждого месяца. Необходимо перевести средства на счет, чтобы они были поступает за 15 календарных дней до этой даты, поэтому необходимо вычесть 15 дней из срока. В следующем примере поймем, как складывать и вычитать даты путем ввода положительных или отрицательных чисел.
-
Введите даты сходимой даты в столбце A.
-
Введите количество дней, в течение дней в которые нужно добавить или вычесть столбец B. Вы можете ввести отрицательное число, чтобы вычесть дни из даты начала, и положительное число, чтобы прибавить к дате.
-
В ячейке C2 введите =A2+B2и скопируйте его при необходимости.
Сложить или вычесть месяцы из даты с помощью функции ДАТАМЕСТ
С помощью функции ДАТАМАЙТА можно быстро прибавить к дате месяцы или вычесть их из нее.
Для функции ДАТАМЕСТ требуются два аргумента: дата начала и количество месяцев, которые нужно прибавить или вычесть. Чтобы вычесть месяцы, введите отрицательное число в качестве второго аргумента. Например, =ВРЕМЯ(«15.09.19»;-5) возвращает 15.04.19.
-
В этом примере даты начала можно ввести в столбец A.
-
Введите количество месяцев, которые нужно добавить или вычесть, в столбце B. Чтобы указать, следует ли вычесть месяц, можно ввести знак «минус» (-) перед числом (например, -1).
-
Введите =ВРЕМЯ(A2;B2) в ячейку C2 и скопируйте ее при необходимости.
Примечания:
-
В зависимости от формата ячеек, содержащих введенную формулу, результаты могут отображаться в Excel как порядковые номера. Например, 8-фев-2019 может отображаться как «43504».
-
В Excel даты хранятся в виде порядковых номеров, что позволяет использовать их в вычислениях. По умолчанию порядковый номер 1 января 1900 г. — 1, а 1 января 2010 г. — 40179, так как он отс0 1 января 1900 г. находится через 40 178 дней.
-
Если результаты отображаются в числовом номере, выберите ячейки, о которые идет речь, и следуйте следующим шагам:
-
Нажмите CTRL+1, чтобы запустить диалоговое окно «Формат ячеек», и щелкните вкладку «Число».
-
В категории щелкните«Дата»,выберите нужный формат даты и нажмите кнопку «ОК». Значения в ячейках должны отобразиться как даты.
-
-
Сложить или вычесть годы из даты
В этом примере мы добавляем и вычитаем годы из начальной даты с помощью следующей формулы:
=ДАТА(ГОД(A2)+B2;МЕСЯЦ(A2);ДЕНЬ(A2))
Как работает формула:
-
Функция ГОД ищет дату в ячейке A2 и возвращает 2019. Затем он прибавляет 3 года к ячейке B2, в результате чего результат будет 2022.
-
Функции МЕСЯЦи ДЕНЬ возвращают только исходные значения из ячейки A2, но они требуются функцией ДАТА.
-
Наконец, функция ДАТА объединяет эти три значения в дату через 3 года в будущем — 08.02.22.
Сложить или вычесть из даты сочетание дней, месяцев и лет
В этом примере мы добавляем и вычитаем годы, месяцы и дни из начальной даты с помощью следующей формулы:
=ДАТА(ГОД(A2)+B2;МЕСЯЦ(A2)+C2;ДЕНЬ(A2)+D2)
Как работает формула:
-
Функция ГОД ищет дату в ячейке A2 и возвращает 2019. Затем она добавляет 1 год из ячейки B2, в результате чего результатом будет 2020.
-
Функция МЕСЯЦ возвращает 6, а затем добавляет в нее 7 из ячейки C2. Это интересно, поскольку 6 + 7 = 13, т. е. 1-й год и 1 месяц. В этом случае формула распознает это и автоматически добавляет к результату еще один год, урезав его с 2020-го по 2021-й.
-
Функция ДЕНЬ возвращает 8 и добавляет к ней 15. Эта формула будет работать так же, как и часть формулы «МЕСЯЦ», если вы ука между числами дней в этом месяце.
-
Затем функция ДАТА объединяет эти три значения в дату, которая составляет 1 год, 7 месяцев и 15 дней в будущем— 23.01.21.
Вот несколько способов использования формул или функций, которые работают с датами для выполнения таких задач, как поиск влияния на календарный план проекта при добавлении двух недель или времени, необходимого для выполнения задачи.
Предположим, что расчетный цикл счета составляет 30 дней, и вы хотите, чтобы средства были на счете за 15 дней до даты вычета за март 2013 г. Вот как это сделать, используя формулу или функцию для работы с датами.
-
В ячейке A1 введите 08.02.2013.
-
В ячейке B1 введите =A1-15.
-
В ячейке C1 введите =A1+30.
-
В ячейке D1 введите =C1-15.
Добавление месяцев к дате
Мы будем использовать функцию ДАТАМЕСЯТ, и вам потребуется дата начала и количество месяцев, которые вы хотите добавить. Вот как добавить 16 месяцев к 24.10.13:
-
В ячейке A1 введите 24.10.2013.
-
В ячейке B1 введите =ВРЕМЯ(A1;16).
-
Чтобы отформатирование результатов в виде дат, выберите ячейку B1. Щелкните стрелку рядом с кнопкой «Числовойформат> даты.
Вычитание месяцев из даты
Для вычитания месяцев из даты будет применяться та же функция ДАТАМАЙТА.
Введите дату в ячейку A1 и в ячейку B1 и формулу =ДАТАМЕС(15.04.2013;-5).
Здесь указывается значение даты начала, которая заключена в кавычках.
Можно просто обратиться к ячейке со значением даты или использовать формулу =ДАТАМЕС(A1;-5) для того же результата.
Другие примеры
Прибавь года к дате или вычесть их из нее
Дата начала |
Прибавь или вычесть года |
Формула |
Результат |
---|---|---|---|
10/24/2013 |
3 (прибавить 3 года) |
=ДАТА(ГОД(A2)+B2;МЕСЯЦ(A2);ДЕНЬ(A2)) |
10/24/2016 |
10/24/2013 |
-5 (вычитать 5 лет) |
=ДАТА(ГОД(A4)+B4;МЕСЯЦ(A4);ДЕНЬ(A4)) |
10/24/2008 |
Skip to content
Из этого обзора вы узнаете несколько быстрых и простых способов подсчета, сколько дней проходит между двумя датами в Excel.
Вам интересно, сколько составляет разница в днях, месяцах и годах между двумя датами? Может быть, вам нужно знать количество дней между сегодняшним днем и какой-либо точкой в прошлом или будущем?
Какова бы ни была ваша проблема, один из приведенных ниже примеров в Excel наверняка подскажет вам решение.
- Простой калькулятор дней
- Как рассчитать разницу в днях?
- Расчёт разницы между датами при помощи функции РАЗНДАТ (DATEDIF)
- Разница в днях
- В полных месяцах
- В полных годах
- В полных месяцах без учёта лет
- Разница в днях без учета месяцев и лет
- В днях без учёта лет
- Как посчитать разницу в днях, месяцах и годах
- Подсчёт с помощью функции ДНИ
- Как рассчитать количество дней между сегодняшним днем и другой датой
- Мастер даты и времени — простой способ создавать формулы разницы дат в Excel
Простой калькулятор дней.
Если вы ищете быстрый ответ, просто укажите две даты в соответствующих ячейках, и наш калькулятор покажет вам, сколько суток между ними:
Хотите узнать формулу, которая рассчитала эти результаты? Это так же просто, как =B3-B2:)
Обратите внимание, что нужно четко знать, что именно вы хотите подсчитать: «дни включительно» или «дни между».
Кроме того, прежде чем выполнять операции с датой-временем, нужно установить правильный формат в ячейках вашей таблицы. Чаще всего Эксель сам подбирает нужный формат представления данных, но все же лучше подстраховаться.
Для этого выберите клетку или диапазон ячеек с числами, которые вы хотите представить как даты, и нажмите комбинацию клавиш Ctrl + 1, чтобы открыть диалоговое окно «Формат ячеек». На вкладке «Числовые форматы» в пункте «Дата», выберите подходящий для вас внешний вид в разделе «Тип» и нажмите кнопку «ОК».
Далее вы найдете подробное объяснение того, как работает эта формула, и узнаете несколько других способов вычисления.
Как рассчитать разницу в днях?
Самый простой способ рассчитать дни между датами в Эксель — вычесть одну из другой:
= Более новая — Более старая
Как мы уже сказали ранее, чтобы узнать, сколько времени пройдет в периоде между ячейками В3 и B2, используйте следующую формулу:
=B3 — В2
где В2 — более ранняя, а B3 — более.
Результатом подсчета является целое число, которое представляет количество дней внутри временного интервала.
Однако, будьте здесь внимательны: при подобном подсчете отработанных дней в том случае, если человек работал и в первый, и в последний день, то 1 день будет «потерян». Добавьте в вашу формулу +1 день.
Как работает эта формула?
Как вы, вероятно, знаете, Microsoft Excel хранит даты в виде порядковых номеров, начинающихся с 1 января 1900 года, которому соответствует номер 1. В этой системе 2 января 1900 года сохраняется как число 2, 3 января 1900 года как 3 и так далее. Таким образом, вычитая одну дату из другой, вы фактически вычитаете целые числа, представляющие их.
В нашем примере формула в C5 на самом деле вычитает 43892 (числовое значение 2 марта 2020г.) из 43900 (числовое значение 10 марта 2020г.) и возвращает результат 8 дней.
Положительный момент этого метода в том, что он отлично работает во всех случаях, независимо от того, какая дата старше, а какая новее. Если вы вычитаете более позднюю дату из более ранней, то формула просто возвращает разницу в виде отрицательного числа.
Рассчитать разницу между датами в Excel с помощью РАЗНДАТ (DATEDIF).
Другой способ — как в Экселе посчитать дни в заданном временном интервале — использование функции РАЗНДАТ (в английском варианте – DATEDIF), которая специально разработана для расчета разности во времени и представления её в различных единицах: дни, месяцы и годы.
А вот ее синтаксис:
= РАЗНДАТ(дата_нач; дата_кон; аргумент)
где
дата_нач и дата_кон — две временных отметки, разницу между которыми необходимо рассчитать,
аргумент – указывает, как представить результат; может иметь одно из следующих значений:
- Y Число полных лет.
- M Число полных месяцев.
- D Число дней.
- MD Разница в днях (значения месяца и года не учитываются).
- YM Разница в месяцах (значения дня и года не учитываются).
- YD Разница в днях, игнорируя значения года.
Чтобы получить количество дней между двумя датами, укажите момент начала в первом аргументе, срок окончания во втором, и «d» в последнем третьем:
РАЗНДАТ(дата_нач; дата_кон; «d»)
DATEDIF (start_date, end_date, «d»)
Примечание. РАЗНДАТ (DATEDIF) — недокументированная функция, то есть ее нет в мастере функций в Excel. Вы не сможете ее вставить при помощи кнопки fx или меню Вставка — Функция. Чтобы создать формулу РАЗНДАТ в таблице Экселя, вам нужно вписать ее название руками и ввести все аргументы вручную, подсказок ввода не будет.
В ней вы можете указывать исходные данные различными способами, такими как:
- Ссылки на ячейки. Например, следующая формула вернет количество дней между A3 и B3:
=РАЗНДАТ(A3; B3; «D»)
Текстовые выражения. Excel понимает даты в различных форматах, например, «2 март 2020», «20.03.2020», «20/03/2020», «2020/03/20», «20-03-2020», «2020-03-20» и т.д.
Вот примеры расчета количества дней во временных промежутках:
=РАЗНДАТ(«2 март 2020»; «2020-03-20»; «D»)
=РАЗНДАТ(«02-03-2020»; «20/03/2020»; «D»)
Естественно, эти значения могут быть записаны и в ячейках, а формула на них будет ссылаться.
- Порядковые номера. Поскольку Microsoft Excel хранит каждую дату как порядковый номер, начинающийся с 1 января 1900 года, вы можете поместить числа, соответствующие датам, непосредственно в формулу. Хотя этот метод полностью поддерживается, все же он не является надежным, поскольку нумерация различается в разных компьютерных системах (Windows и MacOS).
В системе дат 1900 года следующая формула является еще одним способом вычисления месяцев по условиям из предыдущего примера (2 марта 2020 года и 10 марта 2020 года):
=РАЗНДАТ(43900; 43892; «D»)
- Результаты выполнения других функций. Например, следующая формула подсчитывает, срок между сегодня (18 марта 2020г.) и 9 мая 2020 года.
=РАЗНДАТ(СЕГОДНЯ(); «9-05-2020»; «D»)
В отличие от операции вычитания, функция РАЗНДАТ может только вычесть более старую дату из более новой, но не наоборот. Если точка начала позже точки окончания, расчет выдает ошибку #ЧИСЛО!, как в строке 4 на скриншоте ниже:
1. Разница в днях.
В нашем примере формула расчета в D3 выглядит следующим образом:
=РАЗНДАТ(A3; B3; «D»)
Обратите также внимание, что при простом вычитании дат, которые также содержат время, мы получаем в результате дробное число. Так произошло в С5 и С6. Что делать с такими дробями – поговорим чуть позже. А вот время здесь просто игнорируется. В этом вы можете убедиться в диапазоне D5:I6.
Аналогичный результат можно получить формулами:
=ЦЕЛОЕ(В2)-ЦЕЛОЕ(А2)
Время, то есть дробная часть, будет отброшено.
Кстати, если нужно подсчитать только рабочие дни, то следует использовать выражение
=ЧИСТРАБДНИ(В2;А2)
Более подробно о расчете рабочих дней читайте здесь.
2. Разница в полных месяцах.
Обращаемся к ячейке Е3:
=РАЗНДАТ(A3;B3;»m»)
Обратите внимание, выражение вернет количество полных месяцев. В нашем примере 13 месяцев и 7 дней «округлены» ровно до 13. И последний день интервала, как мы уже говорили, эта функция не учитывает. В частности,
=РАЗНДАТ(“01.03.2020”;”31.03.2020”;»m»)
возвращает результат 0, так как последний день не включается в расчет. Вы это видите в ячейке E7. Это также будет важно при расчете стажа и отработанного времени. Учитывайте эту особенность и просто добавляйте 1 дополнительный день!
Формула может быть заменена альтернативным выражением:
= 12*(ГОД(B3)-ГОД(A3))- (МЕСЯЦ(A3)-МЕСЯЦ(B3))-(ДЕНЬ(B3)<ДЕНЬ(A3))
3. Разница в полных годах.
Формула в ячейке F3 вернет количество полных лет:
=РАЗНДАТ(A3;B3;»Y»)
Опять же, считается только полный год, остальное отбрасывается.
Ну и альтернативный способ расчета —
= ЕСЛИ(ДАТА(ГОД(B3); МЕСЯЦ(A3);ДЕНЬ(A3))<= B3; ГОД(B3)-ГОД(A3);ГОД(B3)-ГОД(A3)-1)
4. Разница в полных месяцах без учета лет.
Используем в I3 аргумент «YM».
=РАЗНДАТ(A3;B3;»YM»)
Второй параметр и конечная точка у нас – 10.04.2020 г. Поскольку годы мы здесь игнорируем, то год первого параметра также становится 2020. И мы теперь сравниваем 10.04.2020 и 2.03.2020г.
Результат – 1 полный месяц.
А вот если начало, предположим, будет 01.09.2015г.? Ведь ее нельзя модифицировать до 01.09.2020, поскольку тогда функция выдаст ошибку. И программа ее меняет на 01.09.2019. Результат здесь – 7 полных месяцев.
Я очень сомневаюсь, что кто-то будет проводить подобный расчет. Но он нам будет нужен, чтобы подсчитать количество дней, месяцев и лет между двумя точками. Об этом мы поговорим чуть ниже.
Ну и альтернативный расчет –
=ОСТАТ((12*(ГОД(B3)-ГОД(A3))- (МЕСЯЦ(A3)-МЕСЯЦ(B3))-(ДЕНЬ(B3)<ДЕНЬ(A3)))/12)
5. Разница в днях без учета месяцев и лет.
Здесь немного сложнее. Итак, в G3 пишем:
=РАЗНДАТ(A3;B3;»MD»)
Разберем, как получен результат в G3. Поскольку для нас не важны месяц и год, мы в начальной дате меняем их на текущие. То есть вместо 02.03.2019 рассматриваем 02.04.2020. Сравниваем с 10.04.2020 и получаем 8 дней. Есть ли в таком результате смысл? Вряд ли. Поэтому и не рекомендуется применение этого аргумента как отдельного расчета.
Быть может, поэтому РАЗНДАТ и нет в списке официальных функций Excel.
6. Разница в днях без учета лет.
То же самое, что и в предыдущем аргументе. Считаем количество суток между двумя точками без учета лет.
=РАЗНДАТ(A3;B3;»YD»)
Для начального момента — 02.03.2019 и конечного – 10.04.2020, разница в 39 дней выглядит явной ошибкой. Аналогично – между 01.09.2015 и 10.04.2020 совсем не 222 дня.
Следовательно, использование этого аргумента также не рекомендуем.
А зачем же всё это нужно? Ответ читайте в следующем разделе.
Как посчитать разницу в днях, месяцах и годах.
Чтобы подсчитать, сколько полных лет, месяцев и дней составляет разница «от» и «до» с использованием одной формулы, вы просто объединяете три функции в одно выражение:
=РАЗНДАТ(B2;B3;»Y»)&» лет, «&РАЗНДАТ(B2;B3;»YM»)&» месяцев, «&РАЗНДАТ(B2;B3;»MD»)&» дней»
Если вы не хотите отображать нулевые значения лет, месяцев и дней, то выражение можно изменить, добавив условие ЕСЛИ:
=ЕСЛИ(РАЗНДАТ(B2;B3;»Y»)>0;РАЗНДАТ(B2;B3;»Y»)&» лет «;»»)&ЕСЛИ(РАЗНДАТ(B2;B3;»YM»)>0;РАЗНДАТ(B2;B3;»YM»)&» месяцев «;»»)&ЕСЛИ(РАЗНДАТ(B2;B3;»MD»)>0;РАЗНДАТ(B2;B3;»MD»)&» дней»;»»)
Более подробно об условиях и функции ЕСЛИ читайте здесь.
А вот еще один более сложный, но зато более универсальный вариант расчета разницы в днях, месяцах и годах с учетом склонений и падежей:
=ЕСЛИ(РАЗНДАТ(B2;B3;»y»);РАЗНДАТ(B2;B3;»y»)&» «&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(B2;B3;»y»)-11;100);9);10);»[<1]год;[<4]года;лет»)&» «;)& ЕСЛИ(РАЗНДАТ(B2;B3;»ym»);РАЗНДАТ(B2;B3;»ym»)&» меся»&ТЕКСТ(ОСТАТ(РАЗНДАТ(B2;B3;»ym»)-1; 11);»[<1]ц;[<4]ца;цев»)&» «;)& ЕСЛИ(РАЗНДАТ(B2;B3;»md»)>0;РАЗНДАТ(B2;B3;»md»)&» д»&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(B2;B3;»md»)-11;100);9); 10);»[<1]ень;[<4]ня;ней»);)
Выглядит угрожающе, но зато работает.
Подсчет с помощью функции ДНИ
У пользователей Excel 2013 и 2016 есть еще один удивительно простой способ посчитать количество дней во временном интервале — функция ДНИ.
ДНИ (дата_окончания; дата_начала)
Обратите внимание, что по сравнению с РАЗНДАТ, функция ДНИ требует указания дат в обратном порядке.
Итак, наше выражение принимает вид:
=ДНИ(B3;A3)
Как и обычное вычитание, оно возвращает разницу в виде положительного или отрицательного числа, в зависимости от того, больше или меньше срок окончания, чем начало:
Думаю, в большинстве случаев можно использовать простое вычитание. Возможно, при этом только нужно будет изменить формат ячейки, убрав дробную часть.
Как рассчитать количество дней между сегодня и другой датой.
Для этого расчета вы можете использовать любую из формул, описанных выше, и применить функцию СЕГОДНЯ (TODAY в английском варианте) в качестве одного из аргументов.
Чтобы рассчитать количество прошедших дней с определенного момента, то есть между прошлым и сегодняшним днем:
=СЕГОДНЯ() – Дата_в_прошлом
Для подсчета количества дней, оставшихся до наступления какого-то события, то есть между будущим временем и сегодняшним днем:
=Дата_в_будущем — СЕГОДНЯ()
В качестве примера, давайте посчитаем разницу между текущим моментом времени и более ранним — в A4 (сегодня 18 марта 2020г.):
=СЕГОДНЯ()–A3
А теперь давайте выясним, сколько осталось от сегодняшнего дня (18.03.2020г.) до более позднего срока:
Ну а если не менять выражение по сравнению с предыдущим расчетом, то просто получите отрицательное количество дней.
Мастер даты и времени — простой способ создавать формулы разницы дат в Excel
Как показано в первой части этого руководства, функция РАЗНДАТ (DATEDIF) — довольно универсальная, подходящая для самых разных целей. Однако есть один существенный недостаток — она не документирована Microsoft, то есть вы не найдете РАЗНДАТ в списке функций и не увидите всплывающих подсказок для аргументов, когда начнете вводить формулу в ячейку. Чтобы иметь возможность использовать функцию РАЗНДАТ в своих таблицах, вы должны запомнить ее синтаксис и ввести все аргументы вручную, что может занять много времени и привести к ошибкам, особенно у начинающих.
Надстройка Ultimate Suite радикально меняет это положение, поскольку там имеется мастер даты и времени, который может мгновенно создать практически любую формулу разницы дат. Если вы не уверены, какую формулу использовать, позвольте мастеру даты и времени вычислить количество дней между двумя датами за вас Вот каким образом это можно сделать:
- Выберите ячейку, в которую вы хотите вставить формулу.
- Перейдите на вкладку Ablebits Tools и нажмите кнопку Мастер даты и времени (Date & Time Wizard).
- Появится диалоговое окно мастера даты и времени, где вы переходите на вкладку «Разница (Difference)» и вводите необходимые данные для расчёта:
- Щелкните поле Дата 1 и выберите ячейку, содержащую первую дату.
- Щелкните поле Дата 2 и укажите ячейку со второй датой.
- Выберите желаемую единицу или комбинацию единиц времени из раскрывающегося меню «Разница в (Difference in)» . При этом программа позволяет предварительно просмотреть результат в поле и формулу в ячейке.
Инструмент может рассчитать разницу между двумя датами в 15 форматах:
- Годы
- Месяцы
- Недели
- Дни
- Годы + месяцы
- Годы + недели
- Годы + дни
- Месяцы + недели
- Месяцы + дни
- Недели + дни
- Годы + месяцы + недели
- Годы + месяцы + дни
- Годы + недели + дни
- Месяцы + недели + дни
- Годы + месяцы + недели + дни
- Если вас устраивает то, что вы увидели, нажмите кнопку «Вставить формулу (Insert Formula)», в противном случае попробуйте другие единицы измерения.
После того, как формула вставлена в выбранную ячейку, вы можете скопировать ее вниз по столбцу, как обычно дважды щелкнув или перетащив маркер заполнения.
К сожалению, метки даты и времени вставляются по-английски. Однако, поскольку надстройка формирует для вас не текст, а формулу расчета (что вы и видите на скриншоте), то откорректировать формулу и пользоваться в дальнейшем ее русской версией не слишком сложно.
Да и вряд ли вы самостоятельно напишете такую сложную конструкцию 😊
Для наиболее удобного представления результатов доступно еще несколько дополнительных опций:
- Исключить годы и / или месяцы из расчетов. (Годы и / или месяцы просто будут отброшены).
- Показывать или не показывать текстовые метки времени, такие как дни, месяцы, недели и годы .
- Показывать или не показывать нулевые единицы (0 месяцев, например) .
- Возвращает результаты как отрицательные значения, если Дата 1 (дата начала) больше, чем Дата 2 (дата окончания). Думаю, вы сталкивались с ситуацией, когда попытка вычесть из более ранней даты более позднюю приводила к ошибке. Здесь вы просто получите отрицательную разность.
Более подробная информация доступна здесь.
Преимущества использования мастера формул даты и времени
Помимо скорости и простоты, Мастер даты и времени предоставляет еще несколько преимуществ:
- В отличие от обычной формулы РАЗНДАТ, для формулы, созданной мастером, не важно, какая из двух дат меньше, а какая больше. Разница всегда рассчитывается идеально, даже если Дата 1 (дата начала) больше, чем Дата 2 (дата окончания).
- Мастер поддерживает все возможные единицы измерения (дни, недели, месяцы и годы) и позволяет вам выбирать подходящий вариант из 11 различных комбинаций этих единиц.
- Формулы, которые мастер создает для вас, являются обычными формулами Excel, поэтому вы можете редактировать, копировать или перемещать их как обычно. Вы также можете поделиться своими таблицами с другими людьми, и все формулы останутся на своих местах, даже если у кого-то нет Ultimate Suite в их Excel.
Если вам интересно протестировать этот калькулятор дат, а также открыть для себя еще 60 надстроек для упрощения работы и экономии времени в Excel, то можете загрузить пробную версию Ultimate Suite. Если вам понравились инструменты и вы решили купить лицензию, не пропустите это специальное предложение для читателей нашего сайта.
Думаю, теперь операции с датами стали для вас намного проще и понятнее. Если вы не нашли ответ на интересующий вас вопрос, ознакомьтесь с дополнительными материалами, ссылки на которые вы видите чуть ниже. Или напишите нам в комментариях – постараемся ответить.
Также рекомендуем статьи о работе с датами:
Содержание
- 1 Расчет количества дней
- 1.1 Способ 1: простое вычисление
- 1.2 Способ 2: функция РАЗНДАТ
- 1.3 Способ 3: вычисление количеств рабочих дней
- 1.4 Помогла ли вам эта статья?
- 1.5 Добавляем график
- 2 Способ 1: вычитание
- 3 Способ 2: использование функции
- 4 Способ 3: считаем рабочие дни
Для выполнения определенных задач в Excel нужно определять, сколько дней прошло между некоторыми датами. К счастью, у программы имеются инструменты, которые способны решить данный вопрос. Давайте выясним, какими способами можно посчитать разность дат в Экселе.
Расчет количества дней
Прежде, чем начать работать с датами, нужно отформатировать ячейки под данный формат. В большинстве случаев, при введении комплекта символов, похожего на дату, ячейка сама переформатируется. Но лучше все-таки сделать это вручную, чтобы подстраховать себя от неожиданностей.
- Выделяем пространство листа, на котором вы планируете производить вычисления. Кликаем правой кнопкой мыши по выделению. Активируется контекстное меню. В нём выбираем пункт «Формат ячейки…». Как вариант, можно набрать на клавиатуре сочетание клавиш Ctrl+1.
- Открывается окно форматирования. Если открытие произошло не во вкладке «Число», то следует в неё перейти. В блоке параметров «Числовые форматы» выставляем переключатель в позицию «Дата». В правой части окна выбираем тот тип данных, с которым собираемся работать. После этого, чтобы закрепить изменения, жмем на кнопку «OK».
Теперь все данные, которые будут содержаться в выделенных ячейках, программа будет распознавать как дату.
Способ 1: простое вычисление
Проще всего вычислить разность дней между датами с помощью обычной формулы.
- Записываем в отдельные ячейки отформатированного диапазона даты, разность между которыми нужно вычислить.
- Выделяем ячейку, в которой будет выводиться результат. В ней должен быть установлен общий формат. Последнее условие очень важно, так как, если в этой ячейке стоит формат даты, то в таком случае и результат будет иметь вид «дд.мм.гг» или другой, соответствующий данному формату, что является некорректным итогом расчетов. Текущий формат ячейки или диапазона можно просмотреть, выделив его во вкладке «Главная». В блоке инструментов «Число» находится поле, в котором отображается данный показатель.
Если в нем стоит значение, отличное от «Общий», то в таком случае, как и в предыдущий раз, с помощью контекстного меню запускаем окно форматирования. В нем во вкладке «Число» устанавливаем вид формата «Общий». Жмем на кнопку «OK».
- В отформатированную под общий формат ячейку ставим знак «=». Кликаем по ячейке, в которой расположена более поздняя из двух дат (конечная). Далее жмем на клавиатуре знак «-». После этого выделяем ячейку, в которой содержится более ранняя дата (начальная).
- Чтобы увидеть, сколько времени прошло между этими датами, жмем на кнопку Enter. Результат отобразится в ячейке, которая отформатирована под общий формат.
Способ 2: функция РАЗНДАТ
Для вычисления разности в датах можно также применять специальную функцию РАЗНДАТ. Проблема в том, что в списке Мастера функций её нет, поэтому придется вводить формулу вручную. Её синтаксис выглядит следующим образом:
=РАЗНДАТ(начальная_дата;конечная_дата;единица)
«Единица» — это формат, в котором в выделенную ячейку будет выводиться результат. От того, какой символ будет подставлен в данный параметр, зависит, в каких единицах будет возвращаться итог:
- «y» — полные года;
- «m» — полные месяцы;
- «d» — дни;
- «YM» — разница в месяцах;
- «MD» — разница в днях (месяцы и годы не учитываются);
- «YD» — разница в днях (годы не учитываются).
Так как нам нужно рассчитать разницу в количестве дней между датами, то наиболее оптимальным решением будет применение последнего варианта.
Также нужно обратить внимание, что, в отличие от способа с применением простой формулы, описанного выше, при использовании этой функции на первом месте должна находиться начальная дата, а конечная – на втором. Иначе расчеты будут некорректными.
- Записываем формулу в выбранную ячейку, согласно её синтаксису, описанному выше, и первичным данным в виде начальной и конечной даты.
- Для того, чтобы произвести расчет, жмем кнопку Enter. После этого результат, в виде числа обозначающего количество дней между датами, будет выведен в указанную ячейку.
Способ 3: вычисление количеств рабочих дней
В Экселе также имеется возможность произвести вычисление рабочих дней между двумя датами, то есть, исключая выходные и праздничные. Для этого используется функция ЧИСТРАБНИ. В отличие от предыдущего оператора, она присутствует в списке Мастера функций. Синтаксис у этой функции следующий:
=ЧИСТРАБДНИ(нач_дата;кон_дата;)
В этой функции основные аргументы, такие же, как и у оператора РАЗНДАТ – начальная и конечная дата. Кроме того, имеется необязательный аргумент «Праздники».
Вместо него следует подставлять даты праздничных нерабочих дней, если таковые имеются за охватываемый период. Функция производит расчет всех дней указанного диапазона, исключая субботы, воскресенья, а также те дни, которые добавлены пользователем в аргумент «Праздники».
- Выделяем ячейку, в которой будет находиться итог вычисления. Кликаем по кнопке «Вставить функцию».
- Открывается Мастер функций. В категории «Полный алфавитный перечень» или «Дата и время» ищем элемент «ЧИСТРАБДНИ». Выделяем его и жмем на кнопку «OK».
- Открывается окно аргументов функции. Вводим в соответствующие поля дату начала и конца периода, а также даты праздничных дней, если таковые имеются. Жмем на кнопку «OK».
После указанных выше манипуляций в предварительно выделенной ячейке отобразится количество рабочих дней за указанный период.
Урок: Мастер функций в Excel
Как видим, программа Excel предоставляет своим пользователем довольно удобный инструментарий для расчета количества дней между двумя датами. При этом, если нужно рассчитать просто разницу в днях, то более оптимальным вариантом будет применение простой формулы вычитания, а не использование функции РАЗНДАТ. А вот если требуется, например, подсчитать количество рабочих дней, то тут на помощь придет функция ЧИСТРАБДНИ. То есть, как всегда, пользователю следует определиться с инструментом выполнения после того, как он поставил конкретную задачу.
Мы рады, что смогли помочь Вам в решении проблемы.
Задайте свой вопрос в комментариях, подробно расписав суть проблемы. Наши специалисты постараются ответить максимально быстро.
Помогла ли вам эта статья?
Да Нет
Helen Bradley объясняет, как добавлять интерактивные элементы на лист Excel, используя Полосу прокрутки и Счетчик.
Всякий раз, когда пользователь выбирает из дискретного набора вариантов, какие данные ввести на лист Excel, Вы можете сэкономить время, автоматизировав процесс ввода. Это можно сделать различными способами, и один из них – использовать интерактивные элементы Spin Button (Счетчик) или Scroll Bar (Полоса прокрутки). Сегодня я познакомлю Вас с использованием Счетчика и Полосы прокрутки, а также покажу, как добавить к графику в Excel интерактивный элемент Счетчик.
- Открываем вкладку Разработчик
- Делаем Счетчик более полезным
- Как работает Полоса прокрутки
- Интерактивный график со счетчиком
Открываем вкладку Разработчик
В Excel 2007 и Excel 2010 элементы Счетчик и Полоса прокрутки доступны на вкладке Developer (Разработчик). Если у Вас эта вкладка не отображается выполните следующее:
- в Excel 2010 откройте File > Options > Customize Ribbon (Файл > Параметры > Настроить ленту) и на панели справа поставьте галочку возле названия вкладки Developer (Разработчик).
- в Excel 2007 нажмите кнопку Office, выберите Excel Options (Параметры Excel) и далее в разделе Popular (Основные) включите опцию Show Developer tab in the Ribbon (Показывать вкладку Разработчик на Ленте).
Чтобы увидеть инструменты, перейдите на вкладку Developer > Insert (Разработчик > Вставить) и выберите элемент Spin Button (Счетчик) или Scroll Bar (Полоса прокрутки) из группы Form Controls (Элементы управления формы). Крайне важно выбирать именно из этой группы, а не из ActiveX Controls (Элементы ActiveX), так как они работают абсолютно по-разному.
Перетащите на рабочий лист Excel Счетчик и Полосу прокрутки. Заметьте, что Вы можете изменять положение этих элементов, а также поворачивать их вертикально или горизонтально. Чтобы передвинуть или изменить размер элемента управления, щелкните по нему правой кнопкой мыши, а затем изменяйте размер или перетаскивайте.
Чтобы увидеть, как все это работает, щелкните правой кнопкой мыши по объекту и выберите пункт Format Control (Формат объекта). В открывшемся диалоговом окне на вкладке Control (Элемент управления) находятся параметры для настройки Счетчика. По своей сути, Счетчик помещает в ячейку какое-то значение, а Вы, нажимая стрелки, увеличиваете или уменьшаете его.
Элемент Счетчик имеет ограничения: значение должно быть целым числом от 0 до 30000, параметр Incremental Change (Шаг изменения) также должен быть любым целым числом от 1 до 30000.
Установите Current Value (Текущее значение) равным , Minimum Value (Минимальное значение) равным , Maximum Value (Максимальное значение) равное и Incremental Change (Шаг изменения) равным . Кликните по полю Cell Link (Связь с ячейкой), затем выделите ячейку A1 и закройте диалоговое окно.
Щелкните в стороне от Счетчика, чтобы снять с него выделение, и понажимайте стрелки. Вы увидите, что с каждым нажатием значение в ячейке A1 изменяется. Вы можете увеличить значение до 300, но не более, и уменьшить до 0, но не менее. Обратите внимание, что значение изменяется с шагом 10.
Делаем Счетчик более полезным
Вы можете использовать Счетчик таким образом, чтобы пользователь мог вводить значения на листе простым нажатием кнопки, вместо ввода вручную с клавиатуры. Вероятно, у Вас возникает вопрос: как быть, если значения, которые должен ввести пользователь не целые числа в диапазоне от 0 до 30000?
Решение есть – используйте промежуточную ячейку для вычисления нужного Вам значения. Например, если Вы хотите, чтобы пользователь вводил значения между 0% и 5% с шагом 0,1%, нужно масштабировать значение, которое дает счетчик, чтобы получить результат от до с шагом .
Есть множество вариантов, как это можно реализовать математически и, если Ваше решение работает, то не имеет значения, как Вы это сделали. Вот одно из возможных решений: кликните по счетчику правой кнопкой мыши, выберите Format Control (Формат объекта) и установите Minimum Value (Минимальное значение) = 0, Maximum Value (Максимальное значение) = 500 и Incremental Change (Шаг изменения) = 10. Установите связь с ячейкой A1. Далее в ячейке A2 запишите формулу =A1/10000 и примените к ней процентный числовой формат с одним десятичным знаком.
Теперь, нажимая на кнопки счетчика, Вы получите в ячейке A2 именно тот результат, который необходим – значение процента между 0% и 5% с шагом 0,1%. Значение в ячейке A1 создано счетчиком, но нас больше интересует значение в ячейке A2.
Всегда, когда нужно получить значение более сложное, чем целое число, используйте подобное решение: масштабируйте результат, полученный от счетчика, и превращайте его в нужное значение.
Как работает Полоса прокрутки
Полоса прокрутки работает таким же образом, как и Счетчик. Кроме этого, для Полосы прокрутки Вы можете настроить параметр Page Change (Шаг изменения по страницам), который определяет на сколько изменяется значение, когда Вы кликаете по полосе прокрутки в стороне от её ползунка. Параметр Incremental Change (Шаг изменения) используется при нажатии стрелок по краям Полосы прокрутки. Конечно же нужно настроить связь полосы прокрутки с ячейкой, в которую должен быть помещен результат. Если нужно масштабировать значение, Вам потребуется дополнительная ячейка с формулой, которая будет изменять значение, полученное от Полосы прокрутки, чтобы получить правильный конечный результат.
Представьте организацию, которая предоставляет кредиты от $20 000 до $5 000 000 с шагом изменения суммы $10 000. Вы можете использовать Полосу прокрутки для ввода суммы займа. В этом примере я установил связь с ячейкой E2, а в C2 ввел формулу =E2*10000 – эта ячейка показывает желаемую сумму займа.
Полоса прокрутки будет иметь параметры: Minimum Value (Минимальное значение) = 2, Maximum Value (Максимальное значение) = 500, Incremental Change (Шаг изменения) = 1 и Page Change (Шаг изменения по страницам) = 10. Incremental Change (Шаг изменения) должен быть равен 1, чтобы дать возможность пользователю точно настроить значение кратное $10 000. Если Вы хотите создать удобное решение, то очень важно, чтобы пользователь имел возможность легко получить нужный ему результат. Если Вы установите Шаг изменения равным, к примеру, , пользователь сможет изменять сумму займа кратно $50 000, а это слишком большое число.
Параметр Page Change (Шаг изменения по страницам) позволяет пользователю изменять сумму займа с шагом $100 000, так он сможет быстрее приблизиться к сумме, которая его интересует. Ползунок полосы прокрутки не настраивается ни какими параметрами, так что пользователь способен мгновенно перейти от $20 000 к $5 000 000 просто перетащив ползунок от одного конца полосы прокрутки к другому.
Интерактивный график со счетчиком
Чтобы увидеть, как будут работать эти два объекта вместе, рассмотрим таблицу со значениями продаж за период с 1 июня 2011 до 28 сентября 2011. Эти даты, если преобразовать их в числа, находятся в диапазоне от до (даты в Excel хранятся в виде кол-ва дней, прошедших с 0 января 1900 года).
В ячейке C2 находится такая формула:
=IF($G$1=A2,B2,NA())
=ЕСЛИ($G$1=A2;B2;НД())
Эта формула скопирована в остальные ячейки столбца C. К ячейкам C2:C19 применено условное форматирование, которое скрывает любые сообщения об ошибках, т.к. формулы в этих ячейках покажут множество сообщений об ошибке #N/A (#Н/Д). Мы могли бы избежать появления ошибки в столбце C, написав формулу вот так:
=IF($G$1=A2,B2,"")
=ЕСЛИ($G$1=A2;B2;"")
Но в таком случае график покажет множество нулевых значений, а этого нам не нужно. Таким образом, ошибка – это как раз желательный результат.
Чтобы скрыть ошибки, выделите ячейки в столбце C и нажмите Conditional Formatting > New Rule (Условное форматирование > Создать правило), выберите тип правила Format Only Cells That Contain (Форматировать только ячейки, которые содержат), в первом выпадающем списке выберите Errors (Ошибки) и далее в настройках формата установите белый цвет шрифта, чтобы он сливался с фоном ячеек – это самый эффективный способ скрыть ошибки!
В ячейке G1 находится вот такая формула =40000+G3, а ячейку G3 мы сделаем связанной со Счетчиком. Установим вот такие параметры: Current Value (Текущее значение) = 695, Minimum Value (Минимальное значение) = 695, Maximum Value (Максимальное значение) = 814, Incremental Change (Шаг изменения) = 7 и Cell Link (Связь с ячейкой) = G3. Протестируйте Счетчик, нажимая на его стрелки, Вы должны видеть в столбце C значение, соответствующее дате в ячейке G1.
Minimum Value (Минимальное значение) – это число, добавив к которому 40000 мы получим дату 1 июня 2011, а сложив Maximum Value (Максимальное значение) и 40000, – получим дату 28 сентября 2011. Мы установили Шаг изменения равным 7, поэтому даты, которые появляются в ячейке G1, идут с интервалом одна неделя, чтобы соответствовать датам в столбце A. С каждым кликом по стрелкам Счетчика, содержимое ячейки G3 изменяется и показывает одну из дат столбца A.
Добавляем график
График создаем из диапазона данных A1:C19, выбираем тип Column chart (Гистограмма). Размер графика сделайте таким, чтобы он закрывал собой столбец C, но, чтобы было видно первую строку листа Excel.
Чтобы настроить вид графика, необходимо щелкнуть правой кнопкой мыши по одиночному столбцу, показывающему значение для Series 2 (Ряд 2), выбрать Change Series Chart Type (Изменить тип диаграммы для ряда), а затем Line Chart With Markers (График с маркерами). Далее кликаем правой кнопкой мыши по маркеру, выбираем Format Data Series (Формат ряда данных) и настраиваем симпатичный вид маркера. Ещё раз щелкаем правой кнопкой мыши по маркеру и выбираем Add Data Labels (Добавить подписи данных), затем по Легенде, чтобы выделить её и удалить.
Теперь, когда Вы нажимаете кнопки Счетчика, маркер прыгает по графику, выделяя показатель продаж на ту дату, которая появляется в ячейке G1, а рядом с маркером отображается ярлычок с суммой продаж.
Существует бесчисленное множество способов использовать Счетчики и Полосы прокрутки на листах Excel. Вы можете использовать их для ввода данных или, как я показал в этой статье, чтобы сделать графики более интерактивными.
Урок подготовлен для Вас командой сайта office-guru.ru
Источник: /> Перевел: Антон Андронов
Правила перепечаткиЕще больше уроков по Microsoft Excel
Оцените качество статьи. Нам важно ваше мнение:
Если на листе Excel Вы работаете не только с числами, графиками, рисунками, но и с датами, то, наверняка, сталкивались с ситуацией, когда необходимо было посчитать разницу между ними. Например, нужно определить количество дней или месяцев за определенный период времени, или посчитать возраст человека так, чтобы результат получился в днях, месяцах и годах, а может, требуется вычислить именно рабочие дни.
Статья про расчет разницы в Эксель на сайте уже есть, и в ней я немного затрагивала даты. Но сейчас давайте рассмотрим данный вопрос подробнее и разберемся, как посчитать количество дней между двумя датами простым способом или используя функцию РАЗНДАТ(), и как определить количество именно рабочих дней.
Способ 1: вычитание
Начнем с самого простого – это отнимем от одной даты вторую, и получим нужное нам значение. Перед этим убедитесь, что формат ячеек, в которые вписаны числа, выбран «Дата».
Если еще не заполняли их, тогда выделите диапазон, с которым хотите работать и нажмите напротив названия группы «Число» на маленькую стрелочку.
В открывшемся окне слева выберите подходящий нам формат, а потом в основной области определитесь с типом: 14.03.12, 14 мар 12 или другой. Нажимайте «ОК».
В те ячейки, для которых только что поменяли формат, вводите данные. Я заполнила А1 и В1. Теперь нужно выбрать любую ячейку (D1), в которой установлен общий формат данных, иначе расчеты будут некорректные. Поставьте в нее «=» и нажмите сначала позднюю (В1) дату, потом раннюю (А1). Чтобы вычислить между ними количество дней, жмите «Enter».
Как видите, между 5 июня и 24 сентября 111 дней.
Способ 2: использование функции
Для этого выделите ячейку, в которой будет результат (В3), и посмотрите, чтобы для нее был выбран общий формат.
Для вычисления дней будем использовать функцию РАЗНДАТ(). В нее входят три аргумента: дата начальная и конечная, единица. Единица – это в чем мы хотим получить результат. Сюда подставляется:
«d» – количество дней;
«m» – количество полных месяцев;
«y» – количество полных лет;
«md» – посчитает дни без учета месяцев и годов;
«yd» – подсчет дней без учета только годов;
«ym» – посчитает месяцы не учитывая год.
Ставим в В3 знак равенства, пишем РАЗНДАТ и открываем скобку. Затем выделяем раннюю дату (А1), потом позднюю (В1), ставим в кавычках подходящую единицу и закрываем скобку. Между всеми аргументами ставьте «;». Для расчета, нажмите «Enter».
У меня получилась такая формула:
=РАЗНДАТ(A1;B1;»d»)
Выбрав в качестве единицы «d», я получила результат – 111.
Если изменить данное значение, например, на «md», тогда формула посчитает разницу между 5 и 24 без учета месяцев и годов.
Меняя таким образом данный аргумент, получится вывести точный возраст человека. В одной ячейке будут года «y», второй месяцы «ym», третьей дни «md»
Способ 3: считаем рабочие дни
Чтобы посчитать именно рабочие дни за определенный период используется функция ЧИСТРАБДНИ().
Для примера возьмем такую табличку. В столбце А у нас начало месяца или начальная дата отсчета, в В – конец месяца или отсчета. Данная функция считает рабочие дни без учета субботы и воскресенья, но в месяцах есть еще и праздники, поэтому столбец С заполним соответствующими датами.
Выделите ячейку, в которой будете считать, и выберите для нее общий числовой формат.
Дальше ставьте «=» и пишите функцию. У меня она выглядит так:
=ЧИСТРАБДНИ(A5;B5;C5)
В качестве аргументов указываем начальную дату (А5), потом конечную (В5). Последний аргумент – это праздники (С5). Разделяем их «;».
Нажав «Enter» появится результат, в примере ячейка D5 – 21 день.
Теперь рассмотрим, если в месяце несколько праздников. Например, в январе Новый год и Рождество. Выделяем ячейку (D6) и ставим в нее равно. Потом нажимаем в строке формул на букву «f». Откроется окно «Вставка функции». В поле «Категория» выберите «Полный алфавитный перечень» и найдите в списке нужную функцию. Жмите «ОК».
Дальше необходимо выбрать аргументы функции. В «Нач_дата» выбираем начальное значение (А6), в «Кон_дата» – конечное (В6). В последнем поле вписываем даты праздников в скобках {} и кавычках «». Потом нажимайте «ОК».
В результате мы получим такую функцию и значение будет посчитано без учета выходных и указанных праздников:
=ЧИСТРАБДНИ(A6;B6;{«01.01.17″;»07.01.17»})
Чтобы не прописывать праздники вручную, можно указать в соответствующем поле определенный диапазон. У меня это С6:С7.
Рабочие дни посчитаются, и функция будет иметь вид:
=ЧИСТРАБДНИ(A6;B6;C6:C7)
Теперь сделаем подсчет для последнего месяца. Вводим функцию и заполняем ее аргументы:
=ЧИСТРАБДНИ(A8;B8;C8)
В феврале получилось 19 рабочих дней.
Про другие функции даты и времени в Эксель, я написала отдельную статью, и ее можно прочесть, перейдя по ссылке.
Выбирайте один из описанных способов и считайте разницу в Эксель между необходимыми датами в днях, месяцах или годах, ну а если нужно, то рассчитайте только количество рабочих дней.
Поделитесь статьёй с друзьями:
Довольно часто при работе датами в таблице Эксель возникает необходимость определения временного промежутка между ними, который измеряется в днях. В Excel существуют различные способы для выполнения данной задачи. Давайте рассмотрим их.
Содержание
- Расчет разности дат
- Метод 1: использование формулы вычитания
- Метод 2: функция РАЗНДАТ
- Метод 3: функция ЧИСТРАБДНИ для определения количества рабочих дней
- Заключение
Расчет разности дат
Для корректной работы с датами сперва нужно задать ячейкам соответствующий формат. В противном случае возможны проблемы с корректным отображением дат, что сделает невозможным их дальнейшую обработку.
На самом деле Эксель способен самостоятельно определять формат ячейки после ввода в нее информации. Но этот механизм не всегда срабатывает как надо, поэтому стоит заранее самостоятельно настроить формат ячеек или проверить, правильно ли его определила программа.
- Для начала выделяем целевой диапазон ячеек, воспользовавшись зажатой левой кнопкой мыши.
- Щелкаем по выделенной области правой кнопкой мыши и в открывшемся контекстном меню выбираем команду “Формат ячеек“. Аналогичного результата можно добиться, используя комбинацию клавиш Ctrl+1.
- Перед нами окно настроек формата ячеек:
- по умолчанию мы должны оказаться во вкладке “Число” (если это не так, переключаемся в нее);
- в списке “Числовые форматы” находим позицию “Дата” и кликаем на нее;
- в поле “Тип” выбираем нужный образец представления данных, в соответствии с которым они будут отображаться на листе;
- нажимаем OK.
- Теперь все значения, вводимые в ячейки выделенной области будут восприниматься программой как данные в формате “Дата“.
Метод 1: использование формулы вычитания
Начнем, пожалуй, с самого простого способа – вычитания двух дат, представленного в виде обычной формулы.
- Вносим две даты, между которыми будем определять разницу в днях, в две разные ячейки отформатированного ранее диапазона.
- Теперь выделим ячейку, в которой планируем отобразить результат нашего вычисления.
ВАЖНО: Количество дней обозначается простым целым числом, следовательно, ячейка для его вывода должна иметь отличный от “Дата” формат, а именно – “Общий“. В противном случае полученный результат будет отображаться в формате даты, что не позволит оценить корректность проведенных вычислений. Для определения текущего формата ячейки достаточно взглянуть на соответствующее поле, расположенное в разделе инструментов “Число” на ленте вкладки “Главная“. - В нашем случае установлено значение “Дата“. Для его изменения вновь вызываем окно формата ячеек и по описанному выше алгоритму устанавливаем числовой формат “Общий“. Для сохранения изменений жмем ОК.
- Теперь можно переходить непосредственно к вычислениям:
- в итоговую ячейку вводим знак “=“;
- кликаем по ячейке с конечной датой (более поздней);
- вводим с клавиатуры символ “–” (знак минус);
- кликаем по ячейке с начальной датой.
- Для получения результата жмем клавишу Enter. В итоге получаем целое число – количество дней между двумя датами.
Метод 2: функция РАЗНДАТ
Следующий способ – это определение разницы между двумя датами при помощи функции РАЗНДАТ.
Функция имеет следующий синтаксис: =РАЗНДАТ(начальная_дата;конечная_дата;единица).
Если с двумя первыми аргументами все понятно – их суть соответствует названию, то на третьем (“единица“) стоит остановиться подробнее, так как именно он позволяет варьировать результат использования функции, выбирая единицу расчета разницы между датами:
- “d” — количество дней между датами;
- “m” — количество полных месяцев между датами;
- “y” — количество полных лет между датами;
- “YM” — разница между датами в месяцах;
- “MD” — разница между датами в днях, без учета месяцев и лет;
- “YD” — разница между датами в днях, без учета лет.
В нашем случае покажем пример использование аргумента “YD”, так как целью расчета является определение количества дней между датами в пределах года.
Основное отличие от простого вычитания одной даты из другой – в порядке следования аргументов функции: в качестве первого аргумента выбирается начальная (более ранняя дата), а в качестве второго – конечная (более поздняя). Опишем ниже алгоритм вычислений.
- Выбираем целевую ячейку, проверяем ее формат по способу, описанному выше.
- Описываемая функция отсутствует в Мастере функций, поэтому вводим ее в ячейку вручную, строго придерживаясь синтаксиса.
- Жмем Enter и проверяем полученный результат. Как мы видим, он аналогичен тому, который мы получили, используя простую формулу вычитания. Значит все сделано верно.
Метод 3: функция ЧИСТРАБДНИ для определения количества рабочих дней
Третий описываемый метод позволяет вычислить количество дней с дополнительным условием – исключением из него нерабочих (выходных и праздничных) дней.
В данном методе используется функция ЧИСТРАБДНИ со следующим синтаксисом: =ЧИСТРАБДНИ(нач_дата;кон_дата;[праздники]).
Первые два аргумента аналогичны функции РАЗНДАТ. Последний аргумент является опциональным, то есть функция будет работать и без его указания. Однако именно он позволяет учесть в критериях вычисления нерабочие праздничные дни, так как по умолчанию из общего количества уберутся только субботы и воскресенья.
Приступаем к вычислениям:
- Так как описываемая функция присутствует в списке Мастера функций, воспользуемся им для большей наглядности: встаем на ячейку, куда будем выводить результат и щелкаем по кнопке “Вставить функцию” (fx), расположенной слева от строки формул.
- В открывшемся окне Мастера функций:
- выбираем категорию “Полный алфавитный перечень”;
- находим и кликаем в списке операторов по строке “ЧИСТРАБДНИ”;
- нажимаем ОК.
- Перед нами появится окно аргументов функции. Здесь можно ввести адреса ячеек вручную или, находясь в поле для заполнения значений аргумента, кликнуть по нужной ячейке на листе. Выбрав начальную и конечную дату, а также указав праздничный день (адрес ячейки), нажимаем ОК.
- Предположим, в этот раз мы заранее не задали формат итоговой ячейки как “Общий”. Тогда мы получим результат, отображающийся в виде даты.
- Следовательно, необходимо снова проверить формат по алгоритму, описанному выше и изменить его на “Общий”.
Заключение
С помощью описанных выше методов можно достаточно легко посчитать количество дней между двумя датами, как с наличием дополнительных критериев, так и без них. Формула вычитания и функция РАЗНДАТ прекрасно подойдут для простого подсчета дней, а функция ЧИСТРАБДНИ поможет с расчетом количества именно рабочих дней между датами. Окончательный выбор зависит от поставленной перед пользователем задачи.
На чтение 8 мин. Просмотров 18.7k.
Содержание
- Рассчитать совпадение дат в днях
- Рассчитать оставшиеся дни
- Рассчитать истекшее рабочее время
- Рассчитать срок годности
- Рассчитать дату выхода на пенсию
- Рассчитать года между датами
Рассчитать совпадение дат в днях
= МАКС(МИН(конец1; конец2) -МАКС(начало1; начало2) +1;0)
Чтобы вычислить количество дней, которые перекрываются в двух диапазонах дат, вы можете использовать арифметику с базовыми датами вместе с функциями МИН и MAКС.
В показанном примере формула в D5:
=МАКС(МИН($G$6;C5)-МАКС($G$5;B5);0)
Даты Excel — это просто серийные номера, поэтому вы можете рассчитать длительность путем вычитания более ранней даты из более поздней даты.
Вот что происходит в основе формулы здесь:
MИН (конец; C6) -MAКС (начало; B6) +1
Здесь просто вычитают более раннюю дату из более поздней даты. Чтобы определить, какие даты использовать для каждого сравнения диапазона дат, мы используем MИН для получения самой ранней даты окончания, а MAКС — для последней даты окончания.
Мы добавляем 1 к результату, чтобы убедиться, что мы считаем «столбы забора», а не «промежутки между столбами забора» (аналогия с Джоном Уокенбахом из Библии Excel 2010).
Наконец, мы используем функцию MAКС для захвата отрицательных значений и возврата нуля. Использование MAКС,таким образом, умный способ избежать использования ЕСЛИ.
Рассчитать оставшиеся дни
= Конец даты-начало даты
Чтобы вычислить дни, оставшиеся от одной даты к другой, вы можете использовать простую формулу, которая вычитает более раннюю дату из более поздней даты.
В показанном примере формула в D5:
= C5-B5
Даты в Excel — это только серийные номера, которые начинаются 1 января 1900 года. Если вы введете 1/1/1900 в Excel и отформатируете результат в формате «Общий», вы увидите цифру 1.
Это означает, что вы можете легко рассчитать дни между двумя датами, вычитая более раннюю дату из более поздней даты.
В показанном примере формула решается следующим образом:
= C5-B5
= 42735-42370
= 365
Если вам необходимо рассчитать оставшиеся дни, используйте функцию СЕГОДНЯ следующим образом:
= Конец даты-СЕГОДНЯ()
Функция СЕГОДНЯ всегда возвращает текущую дату. Обратите внимание, что после того, как Конец даты прошел, вы начнете видеть отрицательные результаты, потому что значение, возвращаемое СЕГОДНЯ, будет больше, чем конечная дата.
Вы можете использовать эту версию формулы, чтобы отсчитывать дни до важных событий или этапов, подсчитывать дни до истечения срока членства и т. д.
Рассчитать истекшее рабочее время
= Конец-начало
Если вам нужно вычислить затраченное время, вы можете использовать простую формулу, которая вычитает время начала с момента окончания. Однако, когда время пересекает суточный рубеж, все может стать сложнее. Ниже приведено несколько способов, чтобы вычислить затраченное время, в зависимости от ситуации.
В Excel один день (24 часа) обозначается цифрой 1. Таким образом, 1 час — это 0.041666667 (то есть 1/24), 8 часов — 0,333, 12 часа — 0,50 и так далее. Короче говоря, вы можете думать о часах как о дробных частях дня.
Когда время начала и окончания одновременно в один и тот же день, тогда время начала по определению меньше времени окончания, и вы можете использовать простое вычитание, чтобы определить прошедшее время. Например, при стартовом времени 9:00 и в конце времени 17:00, вы можете просто использовать эту формулу:
конец — начало = прошедшее время
0;375 — 0;708 = 0;333 // 8 часов
Для форматирования прошедших часов может быть полезно использовать пользовательский формат, например ч: мм или [ч]: мм
Специальный синтаксис квадратных скобок [ч] указывает Excel на то, что продолжительность более 24 часов. Если вы не используете скобки, Excel просто обнулится, когда продолжительность будет 24 часа (например, часы).
Вычисление пройденного времени более сложно, если время пересекает дневную границу. Например, если время начала — 22:00 один день, а время окончания — 5:00 на следующий день, время окончания на самом деле меньше времени начала, а приведенная выше формула вернет отрицательное значение, которое вызовет Excel для отображения строки символов хеша (т. Е. ########).
Чтобы исправить эту проблему, вы можете использовать эту формулу для времен, пересекающих суточную границу:
= 1-конец + начало
Вычитая время начала с 1, вы получаете количество времени в первый день, который вы можете просто добавить к количеству времени во второй день, который совпадает со временем окончания.
Эта формула не будет работать для раз в тот же день, поэтому мы можем обобщить и комбинировать обе формулы внутри оператора ЕСЛИ следующим образом:
= ЕСЛИ(конец> начало; конец-начало; 1-начало + конец)
Теперь, когда оба времени в один и тот же день, где конец больше времени начала, поэтому используется простая формула. Но когда время на дневной границе используется вторая формула.
Это можно еще более упростить до этой элегантной формулы:
= ОСТАТ(конечный старт; 1)
Здесь функция ОСТАТ заботится о негативной проблеме, используя функцию ОСТАТ для «переворачивания» отрицательных значений в требуемое положительное значение.
Таким образом, приведенные выше формулы будут обрабатывать любой случай (оба раза в тот же день или начало в один день и в конце в следующего). Однако учтите, что они работают только на время, охватывающие всего один день. Если время превышает один день, вам потребуется другой подход. Один из подходов заключается в использовании как даты, так и времени, как описано ниже.
Если вам не нравится сложность вышеперечисленных решений или вам нужно рассчитать затраченное время, которое занимает более одного дня, просто исправить это просто добавить значение даты как в начале, так и в конце. Например, вы можете ввести 1 сентября 2016 года в 9:00, как показано ниже, с единственным промежутком времени между датой и временем:
9.09.2013 10:00
Поскольку в нем хранятся и дата, и время, вы всегда можете вычесть начало с конца и получить правильный результат.
Например, чтобы рассчитать истекшие часы с 1 сентября 2016 года в 9:00 и 3 сентября в 10:00, введите оба значения как даты плюс время, затем вычтите начало с конца и используйте [ч]: мм для форматирования результата.
Обратите внимание: когда вы используете дату и время, вы можете форматировать значения любым способом. Вы можете применить формат, который показывает дату со временем, или формат, который отображает только время.
В этом примере используется формула в D8. Формула проста:
= C8-B8
Результат равен 2.042, который при форматировании с использованием [ч]: мм составляет 49:00 часов.
Рассчитать срок годности
= A1 + 30 // 30 дней
Чтобы вычислить срок действия в будущем, вы можете использовать различные формулы. В показанном примере формулы, используемые в столбце D:
= B5 + 30 // 30 дней
= B5 + 90 // 90 дней
= КОНМЕСЯЦА (B7;0) // конец месяца
= ДАТАМЕС (B8;1) // следующий месяц
= КОНМЕСЯЦА (B7;0) +1 // 1-го числа следующего месяца
= ДАТАМЕС(B10;12) // 1 год
В Excel даты — это просто серийные номера. В стандартной системе дат для окон, основанной в 1900 году, где 1 января 1900 года является номером 1. Это означает, что 1 января 2050 года серийный номер 54789.
Если вы рассчитываете дату n дней в будущем, вы можете добавлять дни непосредственно, как в первых двух формулах.
Чтобы рассчитывать по месяцам, вы можете использовать функцию ДАТАМЕС, которая возвращает ту же дату n месяцев в будущем или в прошлом.
Для расчета срока годности в конце месяца, используйте функцию КОНМЕСЯЦА, которая возвращает последний день месяца, n месяцев в будущем или в прошлом.
Самый простой способ рассчитать 1-й день месяца — использовать КОНМЕСЯЦА, чтобы получить последний день предыдущего месяца, а затем просто добавить 1 день.
Рассчитать дату выхода на пенсию
= ДАТАМЕС(A1;12 * 60)
Чтобы рассчитать дату выхода на пенсию на основе даты рождения, вы можете использовать функцию ДАТАМЕС.
В показанном примере формула в D5:
=ДАТАМЕС(C5;12*60)
Функция ДАТАМЕС является полностью автоматической и возвращает дату месяцев в будущем или прошлом, когда дана дата и количество месяцев, которые нужно пройти.
В этом случае мы хотим, чтобы дата в будущем составляла 60 лет, начиная с даты рождения, поэтому мы можем написать такую формулу для данных в примере:
= ДАТАМЕС(C6;12 * 60)
Дата начинается с даты рождения в столбце С (дат рождения). Нам требуется эквивалент 60 лет в месяцах. Поскольку вы, вероятно, не знаете, сколько месяцев в 60 годах, хороший способ решения данного вопроса — встроить математику для этого вычисления непосредственно в формулу:
12 * 60
Excel решит это (720), а затем отправит в ДАТАМЕС. Вклад расчетов, таким образом, может помочь сделать предположения и цель аргумента понятными.
Примечание: ДАТАМЕС возвращает дату в формате серийного номера Excel, поэтому убедитесь, что вы применяете форматирование даты.
Формула, используемая для получения оставшихся лет:
= ДОЛЯГОДА (СЕГОДНЯ (); D6)
Вы можете использовать этот же подход для расчета возраста от даты рождения.
Что, если вы просто хотите знать год выхода на пенсию? В этом случае вы можете отформатировать дату, возвращенную ДАТАМЕС, в формате пользовательских чисел «гггг», или, если вы действительно хотите только год, вы можете заключить результат в функцию ГОД следующим образом:
= ГОД (ДАТАМЕС(A1;12 * 60))
Эта же идея может быть использована для расчета дат для широкого спектра вариантов использования:
- Срок действия гарантии
- Срок действия членства
- Дата окончания рекламного периода
- Истечение срока годности
- Даты осмотра
- Срок действия сертификата
Рассчитать года между датами
= ДОЛЯГОДА (нач_дата; кон_дата)
Если вы хотите вычислить количество лет между двумя датами, вы можете использовать функцию ДОЛЯГОДА, которая будет возвращать десятичное число, представляющее долю года между двумя датами. Вот несколько примеров результатов, которые ДОЛЯГОДА вычисляет:
дата начала (1/1/2015) дата окончания ( 1/1/2016) результат ДОЛЯГОДА(1)
дата начала (6/1/2000) дата окончания (6/25/1999) результат ДОЛЯГОДА(0.9333)
Если у вас есть десятичное значение, вы можете округлить число, если хотите. Например, вы можете округлить до ближайшего целого числа:
= ОКРУГЛ(ДОЛЯГОДА (A1; B1); 0)
Вы также можете сохранить только целую часть результата без дробного значения, так что вы будете считать только целые годы. В этом случае вы можете просто обернуть ДОЛЯГОДА в функцию ЦЕЛОЕ:
= ЦЕЛОЕ(ДОЛЯГОДА(A1; B1))
На чтение 5 мин Просмотров 2к. Опубликовано 27.02.2022
Итак, мы имеем несколько серьезных функций, для того чтобы рассчитать кол-во дней между двумя датами, причем с разными параметрами (такими как выходные дни, праздники и так далее).
В этой статье я продемонстрирую вам разные ситуации, где нужно посчитать кол-во дней между датами. Все они будут с разными «уклонами», в одной ситуации нужно посчитать без выходных, в другой количество понедельников и так далее.
Содержание
- Стандартный расчет количества дней
- С помощью функции ДНИ
- С помощью функции РАЗНДАТ
- Расчет кол-ва рабочих дней
- Расчет кол-ва неполных рабочих дней между двумя датами
- Количество понедельников между двумя датами
Стандартный расчет количества дней
Итак, в Excel есть две функции для вычисления кол-ва дней.
С помощью функции ДНИ
Чтобы получить результат от функции нам понадобится дата начала и дата конца.
Итак, вы указываете эти две даты в аргументах функции и получаете количество дней между ними.
Хороший пример вы можете видеть на картинке ниже:
Используем эту формулу:
=ДНИ(B2;B1)
Также вы можете вручную прописать даты в функции (без указания ячеек), но тогда вам нужно заключить их в кавычки.
Эта функция вычислит количество дней между этими датами, но если вы хотите чтобы расчет велся «включительно» с датами начала и конца, то добавьте к результату + 1 (просто пропишите это в функции).
С помощью функции РАЗНДАТ
Эта функция аналогична, её отличие в том, что можно указать больше параметров. То есть больше «подстроить» под ситуацию.
Также можно вычислить кол-во месяцев или лет между датами.
Допустим, мы имеем то что указано на картинке ниже:
Пропишем формулу:
=РАЗНДАТ(B1;B2;"D")
Эта функция использует три наших аргумента:
- Дата начала — B1
- Дата окончания — B2
- «D» — текстовая строка
Важный момент: этой функции не будет в подсказке при написании названия функции, т.е. если вы будете писать РАЗНДАТ, Excel будет вести себя так, как будто он не знает что это за функция, но это не так.
Функция РАЗНДАТ больше подходит для ситуаций, когда нужно вычислить кол-во лет или месяцев между датами, в других ситуациях удобнее применять ДНИ (функцию).
Вот формула, которая даст результат по месяцам, которые будут между датами:
=РАЗНДАТ(B1;B2;"M")
А эта формула, тоже самое что и прошлая, только вычисляет кол-во лет:
=РАЗНДАТ(B1;B2;"Y")
Расчет кол-ва рабочих дней
Итак, рабочие дни можно вычислить двумя способами:
- Функция Excel ЧИСТРАБДНИ — ее следует использовать, если выходные дни — суббота и воскресенье.
- Функция Excel ЧИСТРАБДНИ.МЕЖД — используйте ее, когда выходные дни отличаются от субботы и воскресенья.
Сначала быстро рассмотрим синтаксис и аргументы фунции ЧИСТРАБДНИ.
Функция Excel ЧИСТРАБДНИ
=ЧИСТРАБДНИ(нач_дата, конеч_дата, [праздники])
- нач_дата — это дата начала отсчета.
- end_date — это конечная дата отсчета.
- [праздники] — (Необязательно) Отдельная дата или диапазон дат, которые не будут учитываться в расчетах.
Посмотрим на стандартный пример, когда нужно посчитать кол-во рабочих дней.
Мы будем использовать эту формулу:
=ЧИСТРАБДНИ(B2;C2;$F$2:$F$6)
Такая вариация этой функции даст то что вам нужно, если вам нужно посчитать рабочие дни без субботы и воскресенья.
Но бывают и другие ситуации, к примеру, в разных странах выходные на неделе строятся по-разному, это может быть пятница и так далее.
Именно для таких ситуаций и появилась функция ЧИСТРАБДНИ.МЕЖД.
Посмотрим что из себя представляет эта функция.
Функция Excel ЧИСТРАБДНИ.МЕЖД
=ЧИСТРАБДНИ.МЕЖД(нач_дата; конеч_дата; [выходные]; [праздники])
- нач_дата — значение даты, представляющее собой начальную дату.
- конеч_дата — значение даты, представляющее дату окончания.
- [нерабочие дни] — (Необязательно) в этом аргументе указываются исключительные дни(праздники и т.д.), если аргумента не будет, выходные останутся по-стандарту(суббота и воскресенье).
А сейчас, попробуем посчитать кол-во рабочих дней, если выходными будут пятница и суббота.
Допустим, таблица такая же как и в прошлом примере:
Будем использовать формулу:
=ЧИСТРАБДНИ.МЕЖД(B2;C2;7;$F$2:$F$6)
3 аргумент в функции сообщает Excel, что пятница и суббота выходные.
Также, мы можем использовать ЧИСТРАБДНИ.МЕЖД для расчета выходных между двумя датами.
Она конечно вычисляет кол-во рабочих дней, но мы можем адаптировать это «под себя».
Допустим, таблица все та же:
Формула, которая нам подойдет:
=ДНИ(C2;B2)+1-РАЗНДАТ(B2;C2)
Расчет кол-ва неполных рабочих дней между двумя датами
Также, к примеру, можно использовать эту же функцию для расчета неполных рабочих дней.
Допустим, у нас есть похожая таблица с данными:
Формула, для нашего случая, будет такой:
=ЧИСТРАБДНИ.МЕЖД($B$3;$C$3;"1010111";$E$3:$E$7)
Для обозначения выходных дней, мы использовали «1010111».
- 0 — рабочий день
- 1 — неполный рабочий день
Первая цифра из этого числа — понедельник, последняя — воскресенье
Грубо говоря, «0000011» значит, что с понедельника по пятницу — рабочие дни, а суббота и воскресенье — нерабочие (выходные).
По той же логике, «1010111» означает, что только вторник и четверг являются рабочими, а остальные 5 дней — нерабочими.
Если вам нужно исключить какие-то дни из расчетов, можете исключать их таким образом.
Количество понедельников между двумя датами
Для поиска количества понедельников мы можем использовать ту же логику, которая использовалась выше при подсчете неполных рабочих дней.
Функция, которая выведет кол-во понедельников:
=ЧИСТРАБДНИ(B2;C2;"0111111")
В этой формуле «0» означает рабочий день, а «1» — нерабочий день.
Формула рассчитывает количество рабочих дней, с учетом того что единственный рабочий день — это понедельник.
Аналогичным образом можно рассчитать количество любых, интересующих вас дней, между двумя датами.
Видео
Как обычно, кому надо быстро — смотрим видео. Подробности и нюансы — в тексте ниже:
Как вводить даты и время в Excel
Если иметь ввиду российские региональные настройки, то Excel позволяет вводить дату очень разными способами — и понимает их все:
«Классическая» форма |
3.10.2006 |
Сокращенная форма |
3.10.06 |
С использованием дефисов |
3-10-6 |
С использованием дроби |
3/10/6 |
Внешний вид (отображение) даты в ячейке может быть очень разным (с годом или без, месяц числом или словом и т.д.) и задается через контекстное меню — правой кнопкой мыши по ячейке и далее Формат ячеек (Format Cells):
Время вводится в ячейки с использованием двоеточия. Например
16:45
По желанию можно дополнительно уточнить количество секунд — вводя их также через двоеточие:
16:45:30
И, наконец, никто не запрещает указывать дату и время сразу вместе через пробел, то есть
27.10.2012 16:45
Быстрый ввод дат и времени
Для ввода сегодняшней даты в текущую ячейку можно воспользоваться сочетанием клавиш Ctrl + Ж (или CTRL+SHIFT+4 если у вас другой системный язык по умолчанию).
Если скопировать ячейку с датой (протянуть за правый нижний угол ячейки), удерживая правую кнопку мыши, то можно выбрать — как именно копировать выделенную дату:
Если Вам часто приходится вводить различные даты в ячейки листа, то гораздо удобнее это делать с помощью всплывающего календаря:
Если нужно, чтобы в ячейке всегда была актуальная сегодняшняя дата — лучше воспользоваться функцией СЕГОДНЯ (TODAY):
Как Excel на самом деле хранит и обрабатывает даты и время
Если выделить ячейку с датой и установить для нее Общий формат (правой кнопкой по ячейке Формат ячеек — вкладка Число — Общий), то можно увидеть интересную картинку:
То есть, с точки зрения Excel, 27.10.2012 15:42 = 41209,65417
На самом деле любую дату Excel хранит и обрабатывает именно так — как число с целой и дробной частью. Целая часть числа (41209) — это количество дней, прошедших с 1 января 1900 года (взято за точку отсчета) до текущей даты. А дробная часть (0,65417), соответственно, доля от суток (1сутки = 1,0)
Из всех этих фактов следуют два чисто практических вывода:
- Во-первых, Excel не умеет работать (без дополнительных настроек) с датами ранее 1 января 1900 года. Но это мы переживем!
- Во-вторых, с датами и временем в Excel возможно выполнять любые математические операции. Именно потому, что на самом деле они — числа! А вот это уже раскрывает перед пользователем массу возможностей.
Количество дней между двумя датами
Считается простым вычитанием — из конечной даты вычитаем начальную и переводим результат в Общий (General) числовой формат, чтобы показать разницу в днях:
Количество рабочих дней между двумя датами
Здесь ситуация чуть сложнее. Необходимо не учитывать субботы с воскресеньями и праздники. Для такого расчета лучше воспользоваться функцией ЧИСТРАБДНИ (NETWORKDAYS) из категории Дата и время. В качестве аргументов этой функции необходимо указать начальную и конечную даты и ячейки с датами выходных (государственных праздников, больничных дней, отпусков, отгулов и т.д.):
Примечание: Эта функция появилась в стандартном наборе функций Excel начиная с 2007 версии. В более древних версиях сначала необходимо подключить надстройку Пакета анализа. Для этого идем в меню Сервис — Надстройки (Tools — Add-Ins) и ставим галочку напротив Пакет анализа (Analisys Toolpak). После этого в Мастере функций в категории Дата и время появится необходимая нам функция ЧИСТРАБДНИ (NETWORKDAYS).
Количество полных лет, месяцев и дней между датами. Возраст в годах. Стаж.
Про то, как это правильно вычислять, лучше почитать тут.
Сдвиг даты на заданное количество дней
Поскольку одни сутки в системе отсчета даты Excel принимаются за единицу (см.выше), то для вычисления даты, отстоящей от заданной на, допустим, 20 дней, достаточно прибавить к дате это число.
Сдвиг даты на заданное количество рабочих дней
Эту операцию осуществляет функция РАБДЕНЬ (WORKDAY). Она позволяет вычислить дату, отстоящую вперед или назад относительно начальной даты на нужное количество рабочих дней (с учетом выходных суббот и воскресений и государственных праздинков). Использование этой функции полностью аналогично применению функции ЧИСТРАБДНИ (NETWORKDAYS) описанной выше.
Вычисление дня недели
Вас не в понедельник родили? Нет? Уверены? Можно легко проверить при помощи функции ДЕНЬНЕД (WEEKDAY) из категории Дата и время.
Первый аргумент этой функции — ячейка с датой, второй — тип отсчета дней недели (самый удобный — 2).
Вычисление временных интервалов
Поскольку время в Excel, как было сказано выше, такое же число, как дата, но только дробная его часть, то с временем также возможны любые математические операции, как и с датой — сложение, вычитание и т.д.
Нюанс здесь только один. Если при сложении нескольких временных интервалов сумма получилась больше 24 часов, то Excel обнулит ее и начнет суммировать опять с нуля. Чтобы этого не происходило, нужно применить к итоговой ячейке формат 37:30:55:
Ссылки по теме
- Как вычислять возраст (стаж) в полных годах-месяцах-днях
- Как сделать выпадающий календарь для быстрого ввода любой даты в любую ячейку.
- Автоматическое добавление текущей даты в ячейку при вводе данных.
- Как вычислить дату второго воскресенья февраля 2007 года и т.п.
Если вам нужно добавить несколько дней к заданной дате для расчета будущей даты, как вы можете справиться с этим в Excel?
Рассчитайте дату в будущем на основе заданной даты с помощью формулы
Вычислить дату в будущем, исключить выходные, на основе заданной даты с помощью формулы
Вычислить дату в будущем, исключить выходные и праздничные дни на основе заданной даты с помощью формулы
Рассчитайте дату в будущем на основе заданной даты с помощью мощной функции
Рассчитайте дату в будущем на основе заданной даты с помощью формулы
Чтобы получить дату в будущем, которая на 100 дней позже текущей даты, примените следующую простую формулу:
Введите следующую формулу в пустую ячейку, чтобы найти результат, а затем перетащите дескриптор заполнения вниз к ячейкам, чтобы получить дату в будущем, как показано на следующем снимке экрана:
=A2+100
Вычислить дату в будущем, исключить выходные, на основе заданной даты с помощью формулы
Если вы хотите рассчитать будущую дату без учета выходных, используйте эту формулу:
1. Введите приведенную ниже формулу в пустую ячейку, а затем перетащите ручку заполнения в ячейки, в которых вы хотите применить формулу, и отобразится пятизначное число, см. Снимок экрана:
=WORKDAY(A2,100)
2. Затем вы должны преобразовать пятизначное число на сегодняшний день, нажав Короткое свидание из Общие раскрывающийся список в Главная вкладку, см. снимок экрана:
Вычислить дату в будущем, исключить выходные и праздничные дни на основе заданной даты с помощью формулы
1. Введите приведенную ниже формулу в пустую ячейку и перетащите ручку заполнения, чтобы применить формулу к другим ячейкам, после чего отобразятся некоторые числа, см. Снимок экрана:
=WORKDAY(A2,100,$E$2:$E$5)
Внимание: В приведенной выше формуле A2 это текущая дата, на основе которой вы хотите рассчитать дату в будущем, 100 это количество дней, которое вы хотите добавить к дате, E2: E5 это праздничные ячейки, которые необходимо исключить, измените их по своему усмотрению.
2. Затем выберите ячейку с формулой и нажмите Короткое свидание из Общие выпадающий список под Главная вкладка для преобразования числа в формат даты, см. снимок экрана:
Рассчитайте дату в будущем на основе заданной даты с помощью мощной функции
Если вам нужно рассчитать дату в будущем, добавив несколько дней, недель, месяцев или лет, Kutools for ExcelАвтора Помощник по дате и времени функция может оказать вам услугу.
Советы:Чтобы применить это Помощник по дате и времени функция, во-первых, вы должны скачать Kutools for Excel, а затем быстро и легко примените эту функцию.
После установки Kutools for Excel, пожалуйста, сделайте следующее:
1. Выберите ячейку, в которой вы хотите разместить вычисленный результат, и нажмите Кутулс > Формула Помощник > Помощник по дате и времени, см. снимок экрана:
2. В Помощник по дате и времени диалоговом окне выполните следующие операции:
- Выберите Добавить из файла Тип раздел;
- Затем щелкните, чтобы выбрать ячейку, на основе которой вы хотите рассчитать дату в будущем;
- Наконец, введите количество лет, месяцев, недель или дней, которые вы хотите добавить для данной даты.
3. Затем нажмите OK кнопку, и вы получите дату в будущем. А затем перетащите ручку заполнения, чтобы заполнить формулу в другие нужные ячейки, см. Снимок экрана:
Нажмите «Загрузить и получить бесплатную пробную версию». Kutools for Excel от Yhao сейчас!
Другие статьи о дате и времени:
- Рассчитать квартал и год от даты в Excel
- Если у вас есть столбец даты, теперь вы хотите преобразовать дату в квартал и год только для получения следующего результата. Есть ли какие-нибудь быстрые способы решить эту проблему в Excel?
- Рассчитать часы между часами после полуночи в Excel
- Предположим, у вас есть расписание для записи вашего рабочего времени, время в столбце A — это время начала сегодняшнего дня, а время в столбце B — время окончания следующего дня. Обычно, если вы вычисляете разницу во времени между двумя временами прямо минус «= B2-A2», он не будет отображать правильный результат, как показано на скриншоте слева. Как правильно рассчитать часы между двумя временами после полуночи в Excel?
- Рассчитать дату выхода на пенсию с даты рождения в Excel
- Предположим, сотрудник выйдет на пенсию в возрасте 60 лет, как вы можете рассчитать дату выхода на пенсию с даты рождения в Excel?
- Рассчитать количество рабочих часов в месяц в Excel
- Обычно большинство из нас может работать 8 часов в день 5 дней в неделю. Здесь я хочу получить общее количество рабочих часов в месяц для расчета зарплаты. Как посчитать общее количество рабочих часов в месяц в Excel?
- Рассчитать отработанное время и минус время обеда в Excel
- Нам, как сотруднику компании, нужно приходить и уходить каждый рабочий день, подсчет общего рабочего времени за вычетом обеденного времени может помочь рассчитать зарплату в зависимости от времени. Например, у меня есть следующая дневная запись посещаемости, которая содержит вход, выход и начало обеда, время окончания обеда на листе, теперь я хочу рассчитать общее количество отработанных часов, но за вычетом времени обеда каждый день. Чтобы закончить эту работу, я могу представить вам несколько формул.
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!