Как в excel посчитать количество месяцев между датами

Вычисление разности дат в Microsoft Excel

Для выполнения определенных задач в Excel нужно определять, сколько дней прошло между некоторыми датами. К счастью, у программы имеются инструменты, которые способны решить данный вопрос. Давайте выясним, какими способами можно посчитать разность дат в Экселе.

Расчет количества дней

Прежде, чем начать работать с датами, нужно отформатировать ячейки под данный формат. В большинстве случаев, при введении комплекта символов, похожего на дату, ячейка сама переформатируется. Но лучше все-таки сделать это вручную, чтобы подстраховать себя от неожиданностей.

    Выделяем пространство листа, на котором вы планируете производить вычисления. Кликаем правой кнопкой мыши по выделению. Активируется контекстное меню. В нём выбираем пункт «Формат ячейки…». Как вариант, можно набрать на клавиатуре сочетание клавиш Ctrl+1.

Теперь все данные, которые будут содержаться в выделенных ячейках, программа будет распознавать как дату.

Способ 1: простое вычисление

Проще всего вычислить разность дней между датами с помощью обычной формулы.

  1. Записываем в отдельные ячейки отформатированного диапазона даты, разность между которыми нужно вычислить.

Выделяем ячейку, в которой будет выводиться результат. В ней должен быть установлен общий формат. Последнее условие очень важно, так как, если в этой ячейке стоит формат даты, то в таком случае и результат будет иметь вид «дд.мм.гг» или другой, соответствующий данному формату, что является некорректным итогом расчетов. Текущий формат ячейки или диапазона можно просмотреть, выделив его во вкладке «Главная». В блоке инструментов «Число» находится поле, в котором отображается данный показатель.

Если в нем стоит значение, отличное от «Общий», то в таком случае, как и в предыдущий раз, с помощью контекстного меню запускаем окно форматирования. В нем во вкладке «Число» устанавливаем вид формата «Общий». Жмем на кнопку «OK».

В отформатированную под общий формат ячейку ставим знак «=». Кликаем по ячейке, в которой расположена более поздняя из двух дат (конечная). Далее жмем на клавиатуре знак «-». После этого выделяем ячейку, в которой содержится более ранняя дата (начальная).

Способ 2: функция РАЗНДАТ

Для вычисления разности в датах можно также применять специальную функцию РАЗНДАТ. Проблема в том, что в списке Мастера функций её нет, поэтому придется вводить формулу вручную. Её синтаксис выглядит следующим образом:

«Единица» — это формат, в котором в выделенную ячейку будет выводиться результат. От того, какой символ будет подставлен в данный параметр, зависит, в каких единицах будет возвращаться итог:

  • «y» — полные года;
  • «m» — полные месяцы;
  • «d» — дни;
  • «YM» — разница в месяцах;
  • «MD» — разница в днях (месяцы и годы не учитываются);
  • «YD» — разница в днях (годы не учитываются).

Так как нам нужно рассчитать разницу в количестве дней между датами, то наиболее оптимальным решением будет применение последнего варианта.

Также нужно обратить внимание, что, в отличие от способа с применением простой формулы, описанного выше, при использовании этой функции на первом месте должна находиться начальная дата, а конечная – на втором. Иначе расчеты будут некорректными.

    Записываем формулу в выбранную ячейку, согласно её синтаксису, описанному выше, и первичным данным в виде начальной и конечной даты.

  • Для того, чтобы произвести расчет, жмем кнопку Enter. После этого результат, в виде числа обозначающего количество дней между датами, будет выведен в указанную ячейку.
  • Способ 3: вычисление количеств рабочих дней

    В Экселе также имеется возможность произвести вычисление рабочих дней между двумя датами, то есть, исключая выходные и праздничные. Для этого используется функция ЧИСТРАБНИ. В отличие от предыдущего оператора, она присутствует в списке Мастера функций. Синтаксис у этой функции следующий:

    В этой функции основные аргументы, такие же, как и у оператора РАЗНДАТ – начальная и конечная дата. Кроме того, имеется необязательный аргумент «Праздники».

    Вместо него следует подставлять даты праздничных нерабочих дней, если таковые имеются за охватываемый период. Функция производит расчет всех дней указанного диапазона, исключая субботы, воскресенья, а также те дни, которые добавлены пользователем в аргумент «Праздники».

      Выделяем ячейку, в которой будет находиться итог вычисления. Кликаем по кнопке «Вставить функцию».

    Открывается Мастер функций. В категории «Полный алфавитный перечень» или «Дата и время» ищем элемент «ЧИСТРАБДНИ». Выделяем его и жмем на кнопку «OK».

  • Открывается окно аргументов функции. Вводим в соответствующие поля дату начала и конца периода, а также даты праздничных дней, если таковые имеются. Жмем на кнопку «OK».
  • После указанных выше манипуляций в предварительно выделенной ячейке отобразится количество рабочих дней за указанный период.

    Как видим, программа Excel предоставляет своим пользователем довольно удобный инструментарий для расчета количества дней между двумя датами. При этом, если нужно рассчитать просто разницу в днях, то более оптимальным вариантом будет применение простой формулы вычитания, а не использование функции РАЗНДАТ. А вот если требуется, например, подсчитать количество рабочих дней, то тут на помощь придет функция ЧИСТРАБДНИ. То есть, как всегда, пользователю следует определиться с инструментом выполнения после того, как он поставил конкретную задачу.

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Источник: lumpics.ru

    Расчет количества дней между датами в Эксель

    Довольно часто при работе датами в таблице Эксель возникает необходимость определения временного промежутка между ними, который измеряется в днях. В Excel существуют различные способы для выполнения данной задачи. Давайте рассмотрим их.

    Расчет разности дат

    Для корректной работы с датами сперва нужно задать ячейкам соответствующий формат. В противном случае возможны проблемы с корректным отображением дат, что сделает невозможным их дальнейшую обработку.

    На самом деле Эксель способен самостоятельно определять формат ячейки после ввода в нее информации. Но этот механизм не всегда срабатывает как надо, поэтому стоит заранее самостоятельно настроить формат ячеек или проверить, правильно ли его определила программа.

    1. Для начала выделяем целевой диапазон ячеек, воспользовавшись зажатой левой кнопкой мыши.
    2. Щелкаем по выделенной области правой кнопкой мыши и в открывшемся контекстном меню выбираем команду “Формат ячеек“. Аналогичного результата можно добиться, используя комбинацию клавиш Ctrl+1.
    3. Перед нами окно настроек формата ячеек:
      • по умолчанию мы должны оказаться во вкладке “Число” (если это не так, переключаемся в нее);
      • в списке “Числовые форматы” находим позицию “Дата” и кликаем на нее;
      • в поле “Тип” выбираем нужный образец представления данных, в соответствии с которым они будут отображаться на листе;
      • нажимаем OK.
    4. Теперь все значения, вводимые в ячейки выделенной области будут восприниматься программой как данные в формате “Дата“.

    Метод 1: использование формулы вычитания

    Начнем, пожалуй, с самого простого способа – вычитания двух дат, представленного в виде обычной формулы.

    1. Вносим две даты, между которыми будем определять разницу в днях, в две разные ячейки отформатированного ранее диапазона.
    2. Теперь выделим ячейку, в которой планируем отобразить результат нашего вычисления.
      ВАЖНО: Количество дней обозначается простым целым числом, следовательно, ячейка для его вывода должна иметь отличный от “Дата” формат, а именно – “Общий“. В противном случае полученный результат будет отображаться в формате даты, что не позволит оценить корректность проведенных вычислений. Для определения текущего формата ячейки достаточно взглянуть на соответствующее поле, расположенное в разделе инструментов “Число” на ленте вкладки “Главная“.
    3. В нашем случае установлено значение “Дата“. Для его изменения вновь вызываем окно формата ячеек и по описанному выше алгоритму устанавливаем числовой формат “Общий“. Для сохранения изменений жмем ОК.
    4. Теперь можно переходить непосредственно к вычислениям:
      • в итоговую ячейку вводим знак “=“;
      • кликаем по ячейке с конечной датой (более поздней);
      • вводим с клавиатуры символ “” (знак минус);
      • кликаем по ячейке с начальной датой.
    5. Для получения результата жмем клавишу Enter. В итоге получаем целое число – количество дней между двумя датами.

    Метод 2: функция РАЗНДАТ

    Следующий способ – это определение разницы между двумя датами при помощи функции РАЗНДАТ.

    Функция имеет следующий синтаксис: =РАЗНДАТ(начальная_дата;конечная_дата;единица).

    Если с двумя первыми аргументами все понятно – их суть соответствует названию, то на третьем (“единица“) стоит остановиться подробнее, так как именно он позволяет варьировать результат использования функции, выбирая единицу расчета разницы между датами:

    • d” — количество дней между датами;
    • m” — количество полных месяцев между датами;
    • y” — количество полных лет между датами;
    • YM” — разница между датами в месяцах;
    • MD” — разница между датами в днях, без учета месяцев и лет;
    • YD” — разница между датами в днях, без учета лет.
    Читайте также:  Ворд и эксель как правильно пишется

    В нашем случае покажем пример использование аргумента “YD”, так как целью расчета является определение количества дней между датами в пределах года.

    Основное отличие от простого вычитания одной даты из другой – в порядке следования аргументов функции: в качестве первого аргумента выбирается начальная (более ранняя дата), а в качестве второго – конечная (более поздняя). Опишем ниже алгоритм вычислений.

    1. Выбираем целевую ячейку, проверяем ее формат по способу, описанному выше.
    2. Описываемая функция отсутствует в Мастере функций, поэтому вводим ее в ячейку вручную, строго придерживаясь синтаксиса.
    3. Жмем Enter и проверяем полученный результат. Как мы видим, он аналогичен тому, который мы получили, используя простую формулу вычитания. Значит все сделано верно.

    Метод 3: функция ЧИСТРАБДНИ для определения количества рабочих дней

    Третий описываемый метод позволяет вычислить количество дней с дополнительным условием – исключением из него нерабочих (выходных и праздничных) дней.

    В данном методе используется функция ЧИСТРАБДНИ со следующим синтаксисом: =ЧИСТРАБДНИ(нач_дата;кон_дата;[праздники]).

    Первые два аргумента аналогичны функции РАЗНДАТ. Последний аргумент является опциональным, то есть функция будет работать и без его указания. Однако именно он позволяет учесть в критериях вычисления нерабочие праздничные дни, так как по умолчанию из общего количества уберутся только субботы и воскресенья.

    Приступаем к вычислениям:

    1. Так как описываемая функция присутствует в списке Мастера функций, воспользуемся им для большей наглядности: встаем на ячейку, куда будем выводить результат и щелкаем по кнопке “Вставить функцию” (fx), расположенной слева от строки формул.
    2. В открывшемся окне Мастера функций:
      • выбираем категорию “Полный алфавитный перечень”;
      • находим и кликаем в списке операторов по строке “ЧИСТРАБДНИ”;
      • нажимаем ОК.
    3. Перед нами появится окно аргументов функции. Здесь можно ввести адреса ячеек вручную или, находясь в поле для заполнения значений аргумента, кликнуть по нужной ячейке на листе. Выбрав начальную и конечную дату, а также указав праздничный день (адрес ячейки), нажимаем ОК.
    4. Предположим, в этот раз мы заранее не задали формат итоговой ячейки как “Общий”. Тогда мы получим результат, отображающийся в виде даты.
    5. Следовательно, необходимо снова проверить формат по алгоритму, описанному выше и изменить его на “Общий”.

    Заключение

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

    Источник: microexcel.ru

    Вычисление разности дат в Microsoft Excel

    Для выполнения определенных задач в Excel нужно определять, сколько дней прошло между некоторыми датами. К счастью, у программы имеются инструменты, которые способны решить данный вопрос. Давайте выясним, какими способами можно посчитать разность дат в Экселе.

    Расчет количества дней

    Прежде, чем начать работать с датами, нужно отформатировать ячейки под данный формат. В большинстве случаев, при введении комплекта символов, похожего на дату, ячейка сама переформатируется. Но лучше все-таки сделать это вручную, чтобы подстраховать себя от неожиданностей.

      Выделяем пространство листа, на котором вы планируете производить вычисления. Кликаем правой кнопкой мыши по выделению. Активируется контекстное меню. В нём выбираем пункт «Формат ячейки…». Как вариант, можно набрать на клавиатуре сочетание клавиш Ctrl+1.

    Теперь все данные, которые будут содержаться в выделенных ячейках, программа будет распознавать как дату.

    Способ 1: простое вычисление

    Проще всего вычислить разность дней между датами с помощью обычной формулы.

    1. Записываем в отдельные ячейки отформатированного диапазона даты, разность между которыми нужно вычислить.

    Выделяем ячейку, в которой будет выводиться результат. В ней должен быть установлен общий формат. Последнее условие очень важно, так как, если в этой ячейке стоит формат даты, то в таком случае и результат будет иметь вид «дд.мм.гг» или другой, соответствующий данному формату, что является некорректным итогом расчетов. Текущий формат ячейки или диапазона можно просмотреть, выделив его во вкладке «Главная». В блоке инструментов «Число» находится поле, в котором отображается данный показатель.

    Если в нем стоит значение, отличное от «Общий», то в таком случае, как и в предыдущий раз, с помощью контекстного меню запускаем окно форматирования. В нем во вкладке «Число» устанавливаем вид формата «Общий». Жмем на кнопку «OK».

    В отформатированную под общий формат ячейку ставим знак «=». Кликаем по ячейке, в которой расположена более поздняя из двух дат (конечная). Далее жмем на клавиатуре знак «-». После этого выделяем ячейку, в которой содержится более ранняя дата (начальная).

    Способ 2: функция РАЗНДАТ

    Для вычисления разности в датах можно также применять специальную функцию РАЗНДАТ. Проблема в том, что в списке Мастера функций её нет, поэтому придется вводить формулу вручную. Её синтаксис выглядит следующим образом:

    «Единица» — это формат, в котором в выделенную ячейку будет выводиться результат. От того, какой символ будет подставлен в данный параметр, зависит, в каких единицах будет возвращаться итог:

    • «y» — полные года;
    • «m» — полные месяцы;
    • «d» — дни;
    • «YM» — разница в месяцах;
    • «MD» — разница в днях (месяцы и годы не учитываются);
    • «YD» — разница в днях (годы не учитываются).

    Так как нам нужно рассчитать разницу в количестве дней между датами, то наиболее оптимальным решением будет применение последнего варианта.

    Также нужно обратить внимание, что, в отличие от способа с применением простой формулы, описанного выше, при использовании этой функции на первом месте должна находиться начальная дата, а конечная – на втором. Иначе расчеты будут некорректными.

      Записываем формулу в выбранную ячейку, согласно её синтаксису, описанному выше, и первичным данным в виде начальной и конечной даты.

  • Для того, чтобы произвести расчет, жмем кнопку Enter. После этого результат, в виде числа обозначающего количество дней между датами, будет выведен в указанную ячейку.
  • Способ 3: вычисление количеств рабочих дней

    В Экселе также имеется возможность произвести вычисление рабочих дней между двумя датами, то есть, исключая выходные и праздничные. Для этого используется функция ЧИСТРАБНИ. В отличие от предыдущего оператора, она присутствует в списке Мастера функций. Синтаксис у этой функции следующий:

    В этой функции основные аргументы, такие же, как и у оператора РАЗНДАТ – начальная и конечная дата. Кроме того, имеется необязательный аргумент «Праздники».

    Вместо него следует подставлять даты праздничных нерабочих дней, если таковые имеются за охватываемый период. Функция производит расчет всех дней указанного диапазона, исключая субботы, воскресенья, а также те дни, которые добавлены пользователем в аргумент «Праздники».

      Выделяем ячейку, в которой будет находиться итог вычисления. Кликаем по кнопке «Вставить функцию».

    Открывается Мастер функций. В категории «Полный алфавитный перечень» или «Дата и время» ищем элемент «ЧИСТРАБДНИ». Выделяем его и жмем на кнопку «OK».

  • Открывается окно аргументов функции. Вводим в соответствующие поля дату начала и конца периода, а также даты праздничных дней, если таковые имеются. Жмем на кнопку «OK».
  • После указанных выше манипуляций в предварительно выделенной ячейке отобразится количество рабочих дней за указанный период.

    Как видим, программа Excel предоставляет своим пользователем довольно удобный инструментарий для расчета количества дней между двумя датами. При этом, если нужно рассчитать просто разницу в днях, то более оптимальным вариантом будет применение простой формулы вычитания, а не использование функции РАЗНДАТ. А вот если требуется, например, подсчитать количество рабочих дней, то тут на помощь придет функция ЧИСТРАБДНИ. То есть, как всегда, пользователю следует определиться с инструментом выполнения после того, как он поставил конкретную задачу.

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Источник: lumpics.ru

    Функция DATEDIF (РАЗНДАТ) в Excel. Как использовать?

    Функция DATEDIF (РАЗНДАТ) в Excel используется для подсчета количества лет, месяцев или дней между двумя датами. Хороший пример – подсчет возраста.

    Что возвращает функция

    Число, обозначающее количество лет/месяцев/дней между двумя датами. Какие значения будут отображаться (год, месяц или дни) зависит от того, что будет указано вами в атрибутах функции.

    Синтаксис

    =DATEDIF(start_date,end_date,unit) – английская версия

    = РАЗНДАТ( нач_дата ; кон_дата ; единица) – русская версия

    Читайте также:  Как увеличить шрифт в списке в excel

    Аргументы функции

    • start_date (нач_дата): дата, с которой начинается вычисление разницы во времени между двумя датами. Дата может быть указана как текст в кавычках, числовое значение, или результат какого-либо вычисления (например в функции ДАТА());
    • end_date (кон_дата): дата, на которой вычисление разницы во времени между двумя датами будет окончено. Она, также, может быть указана как текст в кавычках, числовое значение, или результат какого-либо вычисления;
    • unit (единица): Этот аргумент определяет в каком измерении будет отображена разница между двумя датами (год, месяц, день). Существует 6 различных типов отражения данных:
    • “Y” – возвращает данные в количестве лет между двумя датами;
    • “M” – возвращает данные в количестве месяцев между двумя датами;
    • “D” – возвращает данные в количестве дней между двумя данными;
    • “MD” – возвращает данные в количестве дней между двумя датами, но не учитывает целые годы, месяца, которые уже прошли при расчете данных. Например, если вы рассчитываете количество дней между двумя датами: 1 Января 2017 и 3 Марта 2017, функция выдаст значение “2”, так как не будет учитывать два прошедших полных месяцев (Январь, Февраль);
    • “YM” – возвращает данные в количестве месяцев между двумя датами, но не учитывает целые годы, которые уже прошли между двумя расчетными данными;
    • “YD” – возвращает данные в количестве дней между двумя датами, но не учитывает целые годы, которые уже прошли между двумя расчетными датами.

    Дополнительная информация

    • При вводе функции в ячейку, она не отображается в быстром меню выбора функций. Тем не менее функция работает во всех версиях Excel. Важно знать аргументы функции и как ими пользоваться;
    • Данные даты в функции могут быть введены как:
      – дата указанная в виде текста в кавычках;
      – число;
      – как результат вычисления, формулы, функции.

    Примеры использования функции РАЗНДАТ в Excel

    Пример №1. Подсчет количества лет между двумя датами

    На примере выше, формула возвращает количество лет между двумя датами. Например, функция вернет значение “27” если вы захотите посчитать количество полных лет между двумя датами 19 июня 1989 года и 26 марта 2017 года. Система подсчитывает количество полных лет и игнорирует количество месяцев и дней между датами.

    Пример №2. Подсчет количества месяцев между двумя датами

    На примере выше, функция DATEDIF (РАЗНДАТ) в Excel возвращает количество полных месяцев между двумя датами – 19 июня 1989 года и 26 марта 2017 года.

    Функция возвращает значение “333”, что является количеством полных месяцев между датами указанными выше.

    Пример №3. Подсчет количества дней между двумя датами

    На примере выше, функция DATEDIF (РАЗНДАТ) в Excel возвращает количество дней между двумя датами. Например, функция возвращает значение “10142” дня между двумя датами – 19 июня 1989 года и 26 марта 2017 года.

    Если вы хотите посчитать количество дней между двумя датами, исключая количество лет, которые уже завершены, вам нужно использовать аргумент “YD” в качестве третьего (пример на рисунке ниже):

    В приведенном выше примере он возвращает значение “280”, то есть число дней между днями, исключая 27 полных лет.

    Если вы хотите посчитать количество дней между двумя датами, исключая количество полных лет и месяцев, используйте атрибут “MD” в качестве третьего аргумента (как показано на рис. ниже):

    На примере выше функция возвращает значение “7” означающие количество дней между двумя днями “19” и “26” число, исключая значения лет и месяцев.

    Источник: excelhack.ru

    Подсчет между датами

    Получить дни, месяцы и годы между датами

    Чтобы рассчитать и отобразить время между датами в днях, месяцах и годах, вы можете использовать формулу, основанную на функции РАЗНДАТ.

    В показанном примере формула в D5:

    Где даты начала указаны в столбце B, а даты окончания — в столбце C.

    Функция РАЗНДАТ предназначена для вычисления разницы между датами в годах, месяцах и днях. Доступны несколько вариантов (например, время в месяцах, время в месяцах без учета дней и лет и т. д.), И они устанавливаются аргументом «единица» в функции.

    В показанном примере мы вычисляем отдельно годы, месяцы и дни, затем «склеиваем» результаты вместе с конкатенацией. Чтобы получить целые годы, мы используем:

    Чтобы получить целые месяцы, мы используем:

    И мы вычисляем дни с:

    Остальная часть формулы — это просто необходимый текст, объединенный с оператором конкатенации (&).

    Чтобы предотвратить вывод дней, месяцев или лет с нулевыми значениями, вы можете обернуть каждую функцию РАЗНДАТ внутри ЕСЛИ, как показано здесь (строки, добавленные для удобочитаемости):

    =ЕСЛИ(РАЗНДАТ(B5; C5; «г»); РАЗНДАТ (B5; C5; «г») & «годы»; «»)
    ЕСЛИ(РАЗНДАТ(B5; C5; «гм»); РАЗНДАТ(B5; C5; «гм») & «месяцы»; «»)
    ЕСЛИ(РАЗНДАТ(B5; C5; «мд»); РАЗНДАТ(B5; C5; «мд») & «дни»; «»)

    Для предотвращения появления дополнительных запятых в конечном результате запятые заменяются пробелами. Использование исходной формулы РАЗНДАТ как «логического теста» внутри ЕСЛИ работает, потому что ЕСЛИ обрабатывает любой ненулевой результат как истинный.

    Подсчитайте дни недели между датами

    = СУММПРОИЗВ(- (ДЕНЬНЕД(СТРОКА(ДВССЫЛ (дата1 & «:» & дата2))) = дни))

    Чтобы подсчитать количество понедельников, пятниц, воскресений и т. п. между двумя датами, вы можете использовать формулу массива, которая использует несколько функций: СУММПРОИЗВ, ДЕНЬНЕД, СТРОКА и ДВССЫЛ.

    В показанном примере формула в ячейке E5 имеет следующий вид:

    В основном эта формула использует функцию ДЕНЬНЕД, чтобы проверить количество дат, чтобы увидеть, попадают ли они в заданный день недели и функцию СУММПРОИЗВ, чтобы подсчитать общее количество.

    Когда дана дата, ДЕНЬНЕД просто возвращает число от 1 до 7, соответствующее конкретному дню недели. С настройками по умолчанию: 1 = воскресенье и 7 = суббота. Итак, 2 = понедельник, 6 = пятница и так далее.

    Трюк этой формулы заключается в понимании того, что даты в Excel — это только серийные номера, которые начинаются 1 января 1900 года. Например, 1 января 2016 года — это серийный номер 42370, а 8 января — 42377. Даты в Excel выглядят только как даты, когда применяется формат числа даты.

    Итак, возникает вопрос — как вы можете построить массив дат, который вы можете использовать в функции ДЕНЬНЕД, чтобы узнать соответствующие дни недели?

    Ответ: использовать СТРОКА с ДВССЫЛ следующим образом:

    ДВССЫЛ позволяет связанным датам «42370: 42377» интерпретироваться как номера строк. Затем функция СТРОКА возвращает массив вроде этого:

    Функция ДЕНЬНЕД оценивает эти числа как даты и возвращает этот массив:

    Который тестируется на заданный день недели (6 в данном случае, начиная с D6). Как только результаты теста преобразуются в 1 и 0 с двойным дефисами, этот массив обрабатывается СУММПРОИЗВ:

    Который возвращает 2.

    Подсчитывать праздники между двумя датами

    = СУММПРОИЗВ((праздники> = начало) * (праздники

    В показанном примере формула в F7:

    Это возвращает массив значений ИСТИНА/ЛОЖЬ, например:

    Второе выражение проверяет каждую дату отпуска, чтобы увидеть, меньше или равна конечной дате в F6:

    (B5: B13 = F5) * (диап

    В показанном примере формула в ячейке E5:

    Функция ТЕКСТ принимает числовые значения и преобразует их в текстовые значения, используя заданный вами формат. В этом примере мы используем формат «ммм д» для обеих функций TEКСT в E5. Результаты объединяются дефисом, используя простую конкатенацию.

    Примечание. Другие примеры в столбце E используют разные текстовые форматы.

    Если дата окончания отсутствует, формула не будет работать правильно, потому что дефис будет добавлен к дате начала (например, «1 марта»).

    Чтобы обработать этот случай, вы можете обернуть конкатенацию и вторую функцию ТЕКСТ внутри ЕСЛИ следующим образом:

    Это создает полный диапазон дат, когда обе даты присутствуют, но выводит только дату начала, когда дата окончания отсутствует.

    Для обработки случая, когда обе даты отсутствуют, вы можете вложить еще один ЕСЛИ следующим образом:

    Эта формула просто возвращает пустую строку («»), когда дата1 недоступна.

    Получать рабочие часы между датами

    = ЧИСТРАБДНИ (начало; конец; праздники) * часы

    Чтобы получить общее количество часов работы между двумя датами, вы можете использовать формулу, основанную на функции ЧИСТРАБДНИ, где «начало» — это дата начала, «конец» — конечная дата, «праздники» — диапазон, который включает в себя даты отпуска , А «часы» — количество рабочих часов в день.

    В показанном примере формула в D5:

    Эта формула использует функцию ЧИСТРАБДНИ, чтобы выполнить работу по определению общего количества рабочих дней между двумя датами с учетом выходных и (необязательно) праздников.

    Праздники, если они предусмотрены, должны быть диапазоном, который включает действительные даты Excel.

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

    Читайте также:  Как в excel сделать график работы

    Обратите внимание, что ЧИСТРАБДНИ по дизайну включает как дату начала, так и дату окончания в результате, и исключает как субботу, так и воскресенье.

    Получать рабочие часы между датами собственного расписания

    Чтобы вычислить часы работы между двумя датами с настраиваемым расписанием, вы можете использовать формулу, основанную на функциях ДЕНЬНЕД и ВЫБОР.

    В показанном примере формула в F5:

    Который возвращает 32 часа, основанный на пользовательском расписании, где 8 часов работают в Пн, Ср и Пт, а 4 часа — в Пт и Вт.

    Примечание. Это формула массива, которая должна вводиться с помощью Control + Shift + Enter.

    По сути, эта формула использует функцию ДЕНЬНЕД для определения дня недели (например, понедельник, вторник и т. д.) Для каждого дня между двумя указанными датами.

    ДЕНЬНЕД возвращает число от 1 до 7, соответствующее конкретному дню недели. С настройками по умолчанию: 1 = воскресенье и 7 = суббота, поэтому, 2 = понедельник, 6 = пятница и так далее.

    Хитрость этой формулы заключается в создании массива дат, которые вы можете использовать в функции ДЕНЬНЕД. Это делается с помощью СТРОКА с ДВССЫЛ следующим образом:

    ДВССЫЛ позволяет связанным датам «» 42464: 42470 «» интерпретироваться как номера строк. Затем функция СТРОКА возвращает массив вроде этого:

    Функция ДЕНЬНЕД оценивает эти числа как даты и возвращает этот массив:

    Эти числа соответствуют дню недели каждой даты.

    Этот массив затем передается функции ВЫБОР в качестве «номера индекса», который был сконфигурирован с 7 значениями:

    Значение1 – рабочие дни в воскресенье

    Значение 2 — рабочие часы в понедельник

    Значение 3 — рабочие часы вторника

    Значение 4 — Рабочие часы в среду

    Значение 5 — рабочие часы в четверг

    Значение 6 — рабочие часы в пятницу

    Значение 7 — работа в субботу

    Поскольку мы даем ВЫБОР более чем одно значение индекса, он возвращает более одного результата в массиве следующим образом:

    Эти цифры соответствуют часам, которые выполнялись каждый день с даты 1 по дату2.

    Наконец, чтобы получить итоговое значение, нам просто нужно обернуть ВЫБОР в СУММ и ввести формулу массива.

    В этом примере итоговый результат составляет 32 часа.

    Примечание: вы могли бы подумать, что вы могли бы использовать СУММПРОИЗВ вместо СУММ, чтобы избежать синтаксиса массива, но он не работает; Вам все равно придется использовать CSE. Я знаю, что причина заключается в использовании ДВССЫЛ с СТРОКА для построения массива значений индекса, но не знаю, почему это требует CSE.

    Получать рабочие дни между датами

    = ЧИСТРАБДНИ(нач_дата; кон_дата; праздники)

    Чтобы вычислить количество рабочих дней между двумя датами, вы можете использовать функцию ЧИСТРАБДНИ. ЧИСТРАБДНИ автоматически исключает выходные и может также исключать настраиваемый список праздничных дней.

    Например, если у вас есть дата 4 января 2016 года (понедельник) в ячейке B4 и 11 января 2016 года (также понедельник) в ячейке C4, эта формула вернет 6:

    Обратите внимание, что ЧИСТРАБДНИ включает как начальную, так и конечную даты в расчете, если они являются рабочими днями.

    ЧИСТРАБДНИ также может исключать настраиваемый список праздников. Например, если у вас есть даты отпуска в H1: H10, вы можете указать ЧИСТРАБДНИ не включать эти даты в качестве рабочих дней, добавив этот диапазон в качестве третьего аргумента в формуле:

    Если вам нужно учитывать пользовательские выходные дни (например, выходные — это только суббота, воскресенье и понедельник и т. д.), Вам нужно переключиться на более надежную функцию ЧИСТРАБДНИ.МЕЖД, которая позволяет вам установить, какие дни недели считаются выходными, подавая аргумент в выходные дни в виде числового кода.

    Источник: excelpedia.ru

    Количество дней между двумя датами в Excel

    При работе с документами в программе Excel часто возникает необходимость посчитать количество дней между двумя датами. Это может понадобиться, например, для того чтобы определить за какое время была выполнена работа или доставка товара. Также иногда возникает необходимость в подсчете количества рабочих дней, например, для оплаты за сделанную работу.

    К счастью, для решения подобных задач в Excel есть немало готовых инструментов, поэтому выполнять подобные расчеты вручную нет необходимости. Сейчас вы узнаете как это делается в современных версиях Excel, таких как Excel 2007, 2010, 2013 и 2016.

    Подготовка ячеек для работы с датами

    Перед тем как начинать работать с датами в Excel, нужно убедиться, что ячейки, в которых будут храниться даты, отформатированы в формат «Дата». Обычно Excel автоматически присваивает такой формат при вводе данных похожих на дату, но если сделать это вручную, то это позволит избежать возможных проблем.

    Для того чтобы изменить формат ячеек их нужно выделить мышкой, кликнуть по ним правой кнопкой и в открывшемся меню выбрать пункт «Формат ячеек».

    После этого откроется окно, в котором нужно выбрать формат «Дата», тип формата, который будет использоваться, и нажать на кнопку «ОК».

    После настройки формата ячеек можно приступать к работе с датами. Для подсчета количества дней между двумя датами можно использовать различные способы. Ниже мы по отдельности рассмотрим каждый из этих вариантов.

    Подсчет количества дней с помощью простой формулы

    Самый простой вариант подсчета количества дней между двумя датами, это простая формула, которая будет вычитать одну дату из другой. Делается это очень просто. Для начала вам нужно ввести начальную и заключительную дату в отдельные ячейки и присвоить им формат «Дата», так как это описано выше.

    После этого нужно выбрать ячейку, в которой будет находиться результат вычислений, и присвоить ей формат «Общий». Формат «Дата» для ячейки с результатом не подходит, поскольку в этой ячейке будет находиться количество дней (число), а не конкретная дата.

    После присвоения формата «Общий», в эту ячейку нужно ввести формулу, которая будет отнимать более раннюю дату от более поздней. Подобная формула вводится очень просто. Выделяем ячейку, в которой должен находится результат, вводим символ «=», потом адрес ячейки с более поздней датой, потом символ «-» и адрес ячейки с более ранней датой.

    После ввода формулы нужно нажать на клавишу Enter, и вы получите результат.

    Как видим, в данном случае количество дней между двумя датами составляет 41.

    Подсчет количества дней между двумя датами

    Кроме этого, в Excel есть специальная функция для подсчета количества дней между двумя датами. Данная функция называется «РАЗНДАТ» и имеет вот такой синтаксис:

    При этом значение «Единица» — это обозначение возвращаемых данных.

    Единица Возвращаемое значение
    «Y» Количество полных лет в периоде.
    «M» Количество полных месяцев в периоде.
    «D» Количество дней в периоде.
    «MD» Разница в днях между начальной и конечной датой. Месяцы и годы дат не учитываются.
    «YM» Разница в месяцах между начальной и конечной датой. Дни и годы дат не учитываются.
    «YD» Разница в днях между начальной и конечной датой. Годы дат не учитываются.

    Для того чтобы воспользоваться данной функцией нужно выделить ячейку, в которой должен находиться результат, присвоить ей тип данных «Общий» и ввести формулу. В данном случае ввод формулы чуть сложнее, нужно ввести символ «=», потом название функции «РАЗНДАТ», а потом открыть круглые скобки и ввести адреса ячеек с датами и единицу возвращаемых значений.

    Обратите внимание, при использовании функции «РАЗНДАТ» сначала нужно вводить адрес ячейки с более ранней датой, а потом с более поздней. После ввода формулы нужно нажать на клавишу Enter, и вы получите результат.

    Подсчет количества рабочих дней между двумя датами

    Еще одна типичная задача – это подсчет количества рабочих дней между двумя датами. Для ее решения в Excel также есть специальная функция, которая называется «ЧИСТРАБНИ». Синтаксис данной функции следующий:

    Как видно, данная функция очень похожа на предыдущую, но имеет новый параметр «Празники». Это необязательный параметр, с помощью которого можно передать даты выходных дней, для того чтобы функция исключила их из списка рабочих. Если не передавать никаких данных о праздниках, то функция «ЧИСТРАБДНИ» посчитает все дни кроме суббот и воскресений.

    Для того чтобы воспользоваться данной функцией нужно выделить ячейку, в которой должен находиться результат, присвоить ей тип данных «Общий» и ввести формулу. Для ввода формулы нужно ввести символ «=», потом название функции «ЧИСТРАБДНИ», потом открыть круглые скобки и ввести адреса ячеек с датами.

    После ввода формулы нужно нажать на клавишу Enter, и вы получите результат.

    Как видим, в данном случае количество рабочих дней между двумя датами составило 30.

    Источник: comp-security.net