Формула в excel дата не на выходные

В этой статье я говорю о добавлении дней к заданной дате, исключая выходные и праздничные дни, что означает добавление рабочих дней (с понедельника по пятницу) только в Excel.

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

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

Добавьте дни, включая выходные и праздничные дни, с Kutools for Excel хорошая идея3

Считайте выходные или будние дни только между двумя заданными датами с Kutools for Excelхорошая идея3


Чтобы добавить дни, исключая выходные, вы можете сделать следующее:

Выберите пустую ячейку и введите эту формулу = РАБДЕНЬ (A2; B2), и нажмите Enter ключ к результату.

Наконечник: В формуле A2 — это начальная дата, B2 — это дни, которые вы хотите добавить.
док добавить дни, исключая выходные 1

Теперь отображается дата окончания, которая добавляет 45 рабочих дней, исключая выходные.
док добавить дни, исключая выходные 2

Примечание: Если рассчитанный результат представляет собой 5-значное число, вы можете отформатировать его до даты, нажав Главная > Формат номера > Короткое свидание. Смотрите скриншот:
док добавить дни, исключая выходные 3


Легко добавлять дни / годы / месяц / часы / минуты / секунды к дате и времени в Excel

Предположим, у вас есть данные о формате даты и времени в ячейке, и теперь вам нужно добавить к этой дате количество дней, лет, месяцев, часов, минут или секунд. Обычно использование формул является первым методом для всех пользователей Excel, но запомнить все формулы сложно. С участием Kutools for ExcelАвтора Помощник по дате и времени вы можете легко добавить дни, годы, месяцы или часы, минуты или секунды к дате и времени, кроме того, вы можете вычислить разницу дат или возраст на основе данного дня рождения, вообще не запоминая формулу. Нажмите, чтобы получить полнофункциональную бесплатную пробную версию в 30 дней!
док добавить час минута секунда
 
Kutools for Excel: с более чем 300 удобными надстройками Excel, которые можно попробовать бесплатно без каких-либо ограничений в 30 дней.

Если у вас есть диапазон ячеек, содержащих праздники, и теперь вы хотите добавить дни, исключая выходные и эти праздничные дни, к заданной дате, как вы можете с этим справиться?

Выберите пустую ячейку и введите эту формулу = РАБДЕНЬ (A2; B2; B4: B6), Затем нажмите Enter ключ для получения результата. Смотрите скриншот:

док добавить дни, исключая выходные 4
док добавить дни, исключая выходные 5

Наконечник: В формуле A2 — это начальная дата, B2 — это дни, которые вы хотите добавить, а B4: B6 — праздничные дни, которые вы хотите исключить.


Если вы хотите добавить дни, включая выходные и праздничные дни, вы можете использовать Kutools for ExcelАвтора Помощник по дате и времени функции.

После бесплатная установка Kutools for Excel, пожалуйста, сделайте следующее:

1. Выберите ячейку, в которую помещается результат добавления, щелкните Кутулс > Формула Помощник > Помощник по дате и времени.
док свидание помощник 1

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

3. Нажмите OK. После вычисления результата вы можете перетащить маркер заполнения на ячейки, которым нужна эта формула.
док свидание помощник 3
док свидание помощник 4

С помощью этого помощника вы можете одновременно добавить к дате x год, y месяц и z дней.
док свидание помощник 5


Работы С Нами Kutools for Excel установлен, вы можете подсчитать количество выходных или будних дней только между двумя заданными датами.

После установки Kutools for Excel, пожалуйста, сделайте следующее:(Бесплатная загрузка Kutools for Excel Сейчас!)

1. Выберите пустую ячейку, в которую вы поместите результат подсчета, и нажмите Кутулс > Формула Помощник > Формула Помощник.
помощник по формуле документа 1

2. Затем в появлении Формула Помощник диалога, выберите Статистический от Тип формулы раскрывающийся список, затем щелкните на Количество рабочих дней между двумя датами in Выберите формулу раздел, затем перейдите в правую часть, нажмите кнопка выбора документа , чтобы выбрать ячейки даты начала и даты окончания.
помощник по формуле документа 2

3. Нажмите Ok, и отсчитывались только дни недели между двумя заданными датами.
помощник по формуле документа 3



Невероятно! Инструмент меняет способ редактирования и просмотра нескольких документов Office.

Открывать файлы в нескольких окнах

 

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

от 图 1 стрелка от 1

Относительные статьи:

  • Как подсчитать уникальные / повторяющиеся даты в столбце Excel?
  • Как быстро разделить дату на день, месяц и год в Excel?
  • Как добавить / вычесть недели до даты в Excel?
  • Как разделить дату и время из ячейки на две отдельные ячейки в Excel?

Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше

В этой статье описаны синтаксис формулы и использование функции РАБДЕНЬ в Microsoft Excel.

Описание

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

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

Синтаксис

РАБДЕНЬ(нач_дата;количество_дней;[праздники])

Аргументы функции РАБДЕНЬ описаны ниже.

  • нач_дата    — обязательный аргумент. Начальная дата.

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

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

Важно: Даты должны быть введены с использованием функции ДАТА или как результат вычисления других формул и функций. Например, для указания даты 23 мая 2008 г. воспользуйтесь выражением ДАТА(2008,5,23). Если ввести даты как текст, это может привести к возникновению проблем.

Замечания

  • В приложении Microsoft Excel даты хранятся в виде последовательных чисел, что позволяет использовать их в вычислениях. По умолчанию дате 1 января 1900 года соответствует номер 1, а 1 января 2008 года — 39448, так как интервал между этими датами составляет 39 448 дней.

  • Если какой-либо из аргументов не является допустимой датой, то workDAY возвращает #VALUE! значение ошибки #ЗНАЧ!.

  • Если start_date плюс дн. возвращает недействительные даты, то workDAY возвращает #NUM! значение ошибки #ЗНАЧ!.

  • Если значение аргумента «количество_дней» не является целым числом, оно усекается.

Пример

Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

Данные

01.10.2008

Начальная дата

151

Осталось дней

26.11.2008

Праздник

04.12.2008

Праздник

21.01.2009

Праздник

Формула

Описание (результат)

Результат

=РАБДЕНЬ(A2;A3)

Отсчитывает 151 рабочий день с начальной даты (30.04.09)

30.04.2009

=РАБДЕНЬ(A2;A3;A4:A6)

Отсчитывает 151 рабочий день с начальной даты, исключая праздники (05.05.09)

05.05.2009

Нужна дополнительная помощь?


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

Если дата (ячейка

A

2

) попадает на субботу или воскресенье, то нижеследующая формула возвращает дату

следующего понедельника

(см.

Файл примера

):

=РАБДЕНЬ(A2-1;1)

или


=ЕСЛИ(ДЕНЬНЕД(A2;2)>5;A2+(8-ДЕНЬНЕД(A2;2));A2)

или дату

прошедшей пятницы

=ЕСЛИ(ДЕНЬНЕД(A2;2)>5;МИН(A2-(ДЕНЬНЕД(A2;2)-5);A2);A2)

Если дата попадает на воскресенье, то будет возвращена прошедшая суббота:

=ЕСЛИ(ДЕНЬНЕД(A2;2)>6;A2-1;A2)

Если дата попадает на воскресенье, то будет возвращен следующий понедельник:

=ЕСЛИ(ДЕНЬНЕД(A2;2)>6;A2+1;A2)


ВНИМАНИЕ!

Формулы не учитывают праздничные дни и переносы рабочих дней на выходные. В статье

Ближайший рабочий день с учетом праздников и переносов

учтены праздничные дни и переносы рабочих дней на выходные.

Во время работы с графиками и календарями всегда кстати очень полезная возможность выделения цветом дат выходных дней (субботы и воскресенья). Формула условного форматирования позволяет выделить все даты выходных дней в списке графика или на календаре в Excel.

Как выделить цветом только выходные дни по дате в Excel

Ниже на рисунке приведен пример автоматического выделения цветом дат выходных дней:

выделить цветом выходные дни.

Чтобы создать такое правило для условного форматирования, выполните следующие действия шаг за шагом:



  1. Выделите исходных диапазон ячеек (в данном примере это A2:A17) и выбреете инструмент: «ГЛАВНАЯ»-«Условное форматирование»-«Создать правило». В результате чего появится окно как показано ниже на рисунке:
  2. Создать правило.

  3. В появившемся окне выберите опцию: «Использовать формулу для определения форматируемых ячеек». Теперь у нас есть возможность ввести формулу для определения собственных правил и условий выделения ячеек цветом в предварительно выделенном исходном диапазоне.
  4. В поле ввода введите логическое выражение формулы представленное на данном этапе. Обратите внимание на то, что в формуле используются только относительные ссылки на ячейки. Для определения дня недели по значению ячейки используется функция ДЕНЬНЕД. Если функция при определенно заданных аргумента будет возвращать значение 6 или 7, это значит, что в текущей ячейке (например, A4) записана дата выходного дня. После чего итоговый результат вычисления целой формулы будет возвращать логическое значение ИСТИНА. В таком случае для этой ячейки будет применено условное форматирование, предварительно заданное пользователем в настройках данного инструмента (описано на следующем этапе).

    =ИЛИ(ДЕНЬНЕД(A2)=1;ДЕНЬНЕД(A2)=7)

  5. Щелкните на кнопку «Формат» и появится знакомое окно для оформления стиля отображения ячейки и ее значения – «Формат ячеек», как показано ниже на рисунке. В данном окне вы имеете возможность указать цвета для заливки, шрифтов и границ ячейки. А также присвоить другие свойства декорации формата. После внесения всех настроек подтвердите их нажатием на кнопку ОК на всех открытых окнах.

кнопку Формат.

В результате в столбце даты подсветились цветом только даты с выходными днями недели.

 

Помогите, пожалуйста, составить две формулы.  
Задача такая:  
к определённой дате, назовём её «дата 1», надо прибавить 12 дней при этом, результат занести в столбец «дата 2»,    
   но (!!!) если 12-й день выпадает на дату отмеченную красным цветом дату (это праздничные и выходные дни),    
    в столбец «дата 2» нужно занести дату, следующую первой за датой или датами  отмеченную красным цветом, т.е. результат в столбце «дата 2» не должен выпасть на праздничный или выходной день.  

  И вторая задача.    
К результату столбца «дата 2», надо прибывать 30 дней и результат занести в столбец «дата 3»,    
     но (!!!) если 30-й день выпадает на дату отмеченную красным цветом (это праздничные и выходные дни),    
     в столбец «дата 3» нужно занести дату, следующую первой за датой или датами  отмеченную красным цветом, т.е. результат в столбце «дата 3» не должен выпасть на праздничный или выходной день.  
     и при этом, если столбец «дата 4» остается на 30-й день не заполненным (пуст), нужно результат в столбце «дата 3» как-то отметь, например, закрасить ячейку.

 
 

{quote}{login=}{date=11.01.2012 11:19}{thema=}{post}Функция РАБДЕНЬ().{/post}{/quote}  

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

 

Для «дата2» можно так попробовать  
=ЕСЛИ(ДЕНЬНЕД(K7+12;2)=6;K7+14;ЕСЛИ(ДЕНЬНЕД(K7+12;2)=7;K7+13;K7+12))

 

{quote}{login=}{date=12.01.2012 12:06}{thema=}{post}Для «дата2» можно так попробовать  
=ЕСЛИ(ДЕНЬНЕД(K7+12;2)=6;K7+14;ЕСЛИ(ДЕНЬНЕД(K7+12;2)=7;K7+13;K7+12)){/post}{/quote}  

  Большое спасибо за помощь, но не при всех условиях работает формула, например если в столбец «дата 1» ввести 11.02.2012, то «дата 2» будет 23.02.2012, что является праздничным днем.  
результат в столбце «дата 2» должен выпадать только на рабочий день.

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Как Excel узнает, что день праздничный или выходной, если даже некоторые Сб и Вс у Вас рабочие?  
Вар.1 Создать макрос, который по цвету заливки будет определять «ленивые» дни.  
Вар.2 Создать отдельный список этих самых «ленивых».  
Вар.2 см. в файле. Формула массива. Список сами дополняйте.

 

{quote}{login=vikttur}{date=12.01.2012 02:02}{thema=}{post}Как Excel узнает, что день праздничный или выходной, если даже некоторые Сб и Вс у Вас рабочие?  
Вар.1 Создать макрос, который по цвету заливки будет определять «ленивые» дни.  
Вар.2 Создать отдельный список этих самых «ленивых».  
Вар.2 см. в файле. Формула массива. Список сами дополняйте.{/post}{/quote}  

      Извините я, наверное, неправильно выразил задачу.  
«Срок, исчисляемый днями, истекает в последний день установленного срока. Если окончание срока, исчисляемого днями, приходится на нерабочий день, последним днем срока считается первый следующий за ним рабочий день».    
10-й день не должен выпасть на нерабочий день. А в столбец «дата 2» необходимо внести дату, следующую за 10-м днем.      
Например: срок начался 26.12.2011 г. + 10 дней выпадает на 05.01.2012 г., 5 января 2012 года является нерабочим днем, значит 10-й день, выпадает на 10.01.2012 г. (первый рабочий день). Соответственно в столбец «дата 2» нужно поставить дату 11.01.2012 г

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

В первом вопросе фигурировало 12 дней, теперь 10. Вы уж определитесь.  

  В формуле есть функция СТРОКА(12:24). Начало проверяемого диапазона с 12 дня по 24. Взято немного с запасом, т.к. число выходных дней подряд (с 30 декабря по 09 января) равно 11. Попробуйте сами поменять диапазон.

 

{quote}{login=vikttur}{date=12.01.2012 11:21}{thema=}{post}В первом вопросе фигурировало 12 дней, теперь 10. Вы уж определитесь.  

  В формуле есть функция СТРОКА(12:24). Начало проверяемого диапазона с 12 дня по 24. Взято немного с запасом, т.к. число выходных дней подряд (с 30 декабря по 09 января) равно 11. Попробуйте сами поменять диапазон.{/post}{/quote}  

      Извините за назойливость, но можно сказать, что я Exel совсем не силен. Только пытаюсь осилить. С днями да, немного напутал.      
  Можно попросить Вас выложить формулу  с учетом последнего отредактированного файла.    
 10-й день не должен выпасть на нерабочий день.  
Т.е. окончание срока должно выпасть на рабочий день или на первый рабочий день следующий за нерабочим.  
А в столбец «дата 2» необходимо внести дату, следующую за 10-м днем.  
Это будет дата начала следующего срока.

 

РАБДЕНЬ(D10+9;1;I$4:I$113)  
если первый день второго периода — любой  
или  
=РАБДЕНЬ(РАБДЕНЬ(D10+9;1;I$4:I$113);1;I$4:I$113)  
если первый день второго периода должен быть рабочим

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

РАБДЕНЬ() не подходит, тут и праздники, и выходные не выходные.

 

Vikttur, добрый вечер. Не могли бы Вы объяснить принцип действия предложенной Вами формулы.  Дело в том, что не всегда она выдает правильные значения.  

  {=D10+МИН(ЕСЛИ(СЧЁТЕСЛИ(I4:I117;D10+СТРОКА(10:24))=0;СТРОКА(10:24)))}  

  СТРОКА(10:24) ???  

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

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

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

В сообщении от 12.01.2012, 23:21 описано, для чего СТРОКА().  

  Условие СЧЁТЕСЛИ(I4:I117;D10+СТРОКА(10:24))=0  
Проверяем наличие даты в диапазоне нерабочих дней I4:I117. Какой даты?    
D10+10, D10+11,…D10+24  
Если проверяемой даты там нет (СЧЕТЕСЛИ()=0), то ИСТИНА.  

  ЕСЛИ(условие;СТРОКА(10:24))  
Если условие истинно, то в массив заносится количество дней (10, 11,…, 24), если ЛОЖЬ, то в массиве ЛОЖЬ.  

  МИН(ЕСЛИ(…)) — найденное минимальное число добавочных дней, которое добавляем к дате D10.  

  Насколько я понял, формула задачу выполняет.

 

{quote}{login=vikttur}{date=13.01.2012 09:27}{thema=}{post}В сообщении от 12.01.2012, 23:21 описано, для чего СТРОКА().  
Vikttur я Вам очень благодарен, можно пока тему не закрывать, я пока тестирую формулу на случай если возникнуть вопросы.  
И скажите пожалуйста, что надо прочитать что бы самому научиться.

 

Владимир

Пользователь

Сообщений: 8196
Регистрация: 21.12.2012

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

  <<что надо прочитать что бы самому научиться.>>  

  Читайте данный форум. Ставьте пред собой задачи. Решайте то, что люди просют. Будьте осторожны, можно втянуться в эту секту и тогда ..придётся продать свою хату..

«..Сладку ягоду рвали вместе, горьку ягоду я одна.»

 

DV_68

Пользователь

Сообщений: 628
Регистрация: 22.12.2012

#16

14.01.2012 06:59:19

Т.к. исключений мало, перечислил их через ЕСЛИ, остальное через РАБДЕНЬ

Прикрепленные файлы

  • post_296868.xls (48.5 КБ)

Skip to content

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

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

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

Microsoft Excel имеет две основных функции, специально предназначенных для расчета будних дней – РАБДЕНЬ (WORKDAY) и ЧИСТРАБДНИ (NETWORKDAYS). Мы также остановимся на дополнительных РАБДНИ.МЕЖД и ЧИСТРАБДНИ.МЕЖД, которые могут быть очень полезными.

Функция РАБДЕНЬ определяет момент времени, который наступит через какое-то количество рабочих дней в будущем или в прошлом. Вы можете использовать ее для добавления или вычитания рабочих дней к определенной точке времени.

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

  1. Функция РАБДЕНЬ.
  2. Как добавить или вычесть рабочие дни.
    • Настраиваем свой график выходных дней.
  3. Как рассчитать, сколько рабочих дней между двумя датами?
    • А если у нас свой особенный график труда и отдыха?
  4. Как определить ближайший рабочий день?
  5. Возможные ошибки при расчетах.

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

Функция РАБДЕНЬ.

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

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

РАБДЕНЬ — это встроенная функция в Excel 2007, 2010, 2013 и 2016. Ее можно ввести руками либо при помощи мастера функций. В более ранних версиях вам нужно специально включать пакет инструментов анализа.

Вам необходимо использовать следующие аргументы:

РАБДЕНЬ(дата_начала; дни; [праздничные_дни])

Первые два обязательны, а последний – по желанию:

  • Дата_начала – с нее начинается подсчет дней.
  • Дни — рабочие дни, которые нужно добавить или вычесть из начальной точки отсчета. Положительное число возвращает будущий момент времени, отрицательное — возвращает в прошлое.
  • Праздничные_дни — необязательный список дат, которые следует считать нерабочими днями. Это может быть либо диапазон ячеек, содержащих даты, которые вы хотите исключить из расчетов, либо константа массива.

Теперь, когда вы знаете основы, давайте посмотрим, как вы можете использовать РАБДЕНЬ в ваших таблицах Excel.

Как добавить или вычесть рабочие дни.

Чтобы рассчитать рабочие дни в Эксель, следуйте этим простым правилам:

  • Чтобы добавить будние дни, введите положительное число в качестве аргумента дни в формуле РАБДЕНЬ.
  • Чтобы вычесть будние дни, используйте там же отрицательное число.

Предположим, у вас в ячейке A10 указан начальный момент времени, а список праздников — в ячейках А2: А7. Вы хотите узнать, какое число будет через 90 рабочих дней в будущем и прошлом. 

Вы можете сделать это, используя следующие формулы:

Чтобы добавить столько же к начальной точке, но учитывая праздничные дни в А2: А7:

=РАБДЕНЬ($A$10;90;$A$2:$A$7)

Чтобы вычесть 90 рабочих дней, исключая праздники:

=РАБДЕНЬ($A$10;-90;$A$2:$A$7)

Чтобы рассчитать сроки на основе текущей даты, используйте функцию СЕГОДНЯ() в качестве точки начала:

Чтобы добавить 90 рабочих дней:

=РАБДЕНЬ(СЕГОДНЯ();90;$A$2:$A$7)

Чтобы переместиться на такое же время назад по отношению к сегодня:

=РАБДЕНЬ(СЕГОДНЯ();-90)

Чтобы указать время начала непосредственно в формуле, используйте формулу ДАТА():

=РАБДЕНЬ(ДАТА(2020;1;7);90;$A$2:$A$7)

На следующем скриншоте показаны результаты всех этих и еще нескольких формул РАБДЕНЬ:

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

=РАБДЕНЬ($A$10;С1;$A$2:$A$7)

Где A10 — начальная датировка, а C1 — число рабочих дней до (отрицательные числа) или после (положительные числа) нее, без учета праздников.

Настраиваем свой график выходных дней.

В случае, если у вас применяется какой-то особенный график нерабочих дней (не суббота и воскресенье), то вам в помощь – формула РАБДЕНЬ.МЕЖД  (WORKDAY.INTL в английской версии).

Она появилась в Excel 2010, в более старых версиях программы ее нет.

Дополнительно к своей предшественнице, она позволяет указывать, какие именно дни недели предназначены у вас для отдыха.

Синтаксис ее выглядит следующим образом:

РАБДЕНЬ.МЕЖД (дата_начала, дни, [выходные], [праздничные_дни])

Первые два аргумента являются обязательными и знакомыми нам:

Дата_начала – начальный момент времени.

Дни — будние дней до (отрицательное значение) или после (положительное значение) начальной точки. Если этот аргумент в результате каких-то расчетов передается в виде десятичного числа, то дробная часть отбрасывается.

Последние два аргумента являются необязательными:

Выходные — указывает, что именно следует считать днями отдыха. Это может быть либо число, либо текст, как показано ниже.

Число

Выходные дни

1 или отсутствует

Суббота Воскресенье

2

Воскресенье понедельник

3

Понедельник вторник

4

Вторник Среда

5

Среда Четверг

6

Четверг Пятница

7

Пятница Суббота

11

Только воскресенье

12

Только понедельник

13

Только вторник

14

Только среда

15

Только четверг

16

Только в пятницу

17

Только суббота

Текст для указания выходного дня — серия цифр из семи нулей и единиц, представляющих семь дней недели, начиная с понедельника. 1 означает нерабочий день, и 0 — соответственно наоборот. Например:

  • «0000010» — суббота — отдыхаем.
  • «1000001» — понедельник и воскресенье — отдыхаем.

И вот как это может выглядеть на примере:

Я бы рекомендовал обратить внимание на конструкцию

=РАБДЕНЬ.МЕЖД($A$10;90;»1000001″;$A$2:$A$7)

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

Все остальное, думаю, достаточно хорошо понятно из скриншота.

Замечание. Функции Excel РАБДЕНЬ и РАБДЕНЬ.МЕЖД возвращают порядковые номера (числа), представляющие даты. Чтобы они отображались как нужно, выделите нужные ячейки и нажмите Ctrl + 1, чтобы открыть диалоговое окно «Формат ячеек». На вкладке «Число» выберите «Дата»  и определите нужный формат. 

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

В ситуациях, когда вам нужно получить число рабочих дней в каком-то временном промежутке, используйте формулу ЧИСТРАБДНИ() (в английском варианте – NETWORKDAYS) :

ЧИСТРАБДНИ (дата_начала; дата_окончания; [праздничные_дни])

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

Чтобы узнать, сколько будних дней между двумя точками в столбцах A и B, используйте следующую формулу:

=ЧИСТРАБДНИ(A10;B10)

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

=ЧИСТРАБДНИ(A10;B10;A2:A7)

В результате учитываются только будние дни.

А если у нас свой особенный график труда и отдыха?

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

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

Формула ЧИСТРАБДНИ.МЕЖД  появилась впервые в Excel 2010, и поэтому недоступна в более ранних версиях программы.

Синтаксис ее выглядит следующим образом:

ЧИСТРАБДНИ.МЕЖД (дата_начала, дни, [выходные], [праздничные_дни])

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

Дата_начала — начальная точка.

Дни — будние дней до (отрицательное значение) или после (положительное значение) точки начала. Если этот аргумент в результате каких-то расчетов предоставляется в виде десятичного числа, то он усекается до целого.

Последние два аргумента являются необязательными:

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

Число

Выходные дни

1 или отсутствует

Суббота Воскресенье

2

Воскресенье понедельник

3

Понедельник вторник

4

Вторник Среда

5

Среда Четверг

6

Четверг Пятница

7

Пятница Суббота

11

Только воскресенье

12

Только понедельник

13

Только вторник

14

Только среда

15

Только четверг

16

Только в пятницу

17

Только суббота

Текст для указания выходного дня — серия цифр из семи нулей и единиц, представляющих семь дней недели, начиная с понедельника. 1 означает день отдыха, а 0 — будний день. Например:

  • «0000011» — суббота и воскресенье – не работаем.
  • «1000001» — понедельник и воскресенье — отдыхаем.

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

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

А теперь несколько примеров.

=ЧИСТРАБДНИ.МЕЖД(A10;B10;1) – это знакомый нам вариант, когда нерабочими считаются суббота и воскресенье.

А вот =ЧИСТРАБДНИ(A10;B10;11) – отдых только в воскресенье,

=ЧИСТРАБДНИ.МЕЖД(A10;B10;2) – в воскресенье и понедельник. Такой расчет полезен, если в вашей организации свой график работы, не такой, как у всех.

=ЧИСТРАБДНИ.МЕЖД(A11;B11;»1100000″;$A$2:$A$7) 

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

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

Например, давайте посмотрим, сколько нужно еще отработать до конца 2020 года. Для этого введем 31 декабря 2020 года в формате даты, и используем следующее выражение:

=»Осталось «&ЧИСТРАБДНИ(СЕГОДНЯ();ДАТА(2020;12;31);A2:A7)&» дн. до конца года!»

Ух, осталось всего 203 дня! Не так много, как я думал :)
Примечание. Чтобы учесть свой индивидуальный график работы, используйте ЧИСТРАБДНИ.МЕЖД().

Как определить ближайший рабочий день?

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

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

как рассчитать ближайший рабочий день

Для субботы подсчитать дату ближайшего понедельника можно двумя способами:

=РАБДЕНЬ(A2-1;1)

или

=ЕСЛИ(ДЕНЬНЕД(A3;2)>5;A3+(8-ДЕНЬНЕД(A3;2));A3)

Ближайший рабочий день в прошлом (то есть прошлая пятница) определяется так:

=ЕСЛИ(ДЕНЬНЕД(A4;2)>5;МИН(A4-(ДЕНЬНЕД(A4;2)-5);A4);A4)

Ну и если немного усложнить условие — если день попадает на субботу, тогда ближайший рабочий день — прошедшая пятница, а если на воскресенье — тогда предстоящий понедельник:

=ЕСЛИ(ДЕНЬНЕД(A6;2)>6;A6+(8-ДЕНЬНЕД(A6;2));МИН(A6-(ДЕНЬНЕД(A6;2)-5);A6))

Как видите, на слишком уж сложно.

Возможные ошибки при расчетах.

Если ваша формула РАБДЕНЬ, РАБДЕНЬ.МЕЖД, ЧИСТРАБДНИ или ЧИСТРАБДНИ.МЕЖД возвращает ошибку #ЧИСЛО! или #ЗНАЧ!, причина может быть одной из следующих:

  • аргументы начала и конца временного отрезка передают неверные данные (не являются датой, записаны как текст скорее всего)
  • аргумент «выходные» указан неверно (например, 22 или «000000011»).

Надеюсь, эти примеры и инструкции были вам полезны. Если еще остались вопросы — пишите в комментариях. Постараюсь ответить.

Также рекомендуем о работе с датами:

Как перевести время в число В статье рассмотрены различные способы преобразования времени в десятичное число в Excel. Вы найдете множество формул для преобразования времени в часы, минуты или секунды. Поскольку Microsoft Excel использует числовую систему для работы с временем, вы можете…
Формат времени в Excel Вы узнаете об особенностях формата времени Excel, как записать его в часах, минутах или секундах, как перевести в число или текст, а также о том, как добавить время с помощью…
Как вывести месяц из даты На примерах мы покажем, как получить месяц из даты в таблицах Excel, преобразовать число в его название и наоборот, а также многое другое. Думаю, вы уже знаете, что дата в…
Как быстро вставить сегодняшнюю дату в Excel? Это руководство показывает различные способы ввода дат в Excel. Узнайте, как вставить сегодняшнюю дату и время в виде статической метки времени или динамических значений, как автоматически заполнять столбец или строку…

Изменение даты платежа в зависимости от дня недели

карандаш

Дата: Вторник, 20.08.2013, 07:52 |
Сообщение № 1

Группа: Проверенные

Ранг: Обитатель

Сообщений: 329


Репутация:

8

±

Замечаний:
0% ±


2010

Здравствуйте!

немного запутался с обработкой дат
(при поиске по форуму не нашел ответа, аналогичной темы, хотя уверен, что её обсуждали не один десяток раз)

есть даты платежей (дни месяца)
необходимо скорректировать дату платежа, приходящуюся на субботу и воскресение (это как-то коряво ещё получилось в ручном режиме)

при этом хотелось бы получить количество оставшихся РАБОЧИХ дней до очередного платежа.
(и при этом через УФ подсвечивать соответствующие строки, где кол-во рабочих дней меньше или равно 5)

запутался в преобразованиях даты в дни, месяцы, годы и операциях с ними — постоянно вылетают какие-то ошибки или получается абракадабра.

помогите, пожалуйста (может есть уже аналогичная ветка)
(данные в ячейках с серыми числами — вспомогательные и будут скрыты при работе)

К сообщению приложен файл:

pay.xls
(31.0 Kb)

Сообщение отредактировал карандашВторник, 20.08.2013, 07:53

 

Ответить

MCH

Дата: Вторник, 20.08.2013, 08:18 |
Сообщение № 2

Группа: Админы

Ранг: Старожил

Сообщений: 2002


Репутация:

751

±

Замечаний:
±


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

При этом, если дата в A1 попадает на выходные (сб или вс), то произойдет перенос на ближайший понедельник, если в A1 не выходные, то переноса не будет
В функцию РАБДЕНЬ() можно добавлять праздники, а вот с рабочими субботами она не работает, для этого нужно делать более сложную формулу

 

Ответить

карандаш

Дата: Четверг, 22.08.2013, 10:10 |
Сообщение № 3

Группа: Проверенные

Ранг: Обитатель

Сообщений: 329


Репутация:

8

±

Замечаний:
0% ±


2010

Здравствуйте

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

Суть в том, чтобы убрать из текущей даты СЕГОДНЯ день, прилепить туда день выплаты, сравнить полученное с СЕГОДНЯ, если меньше, то посчитать кол-во РАБДЕНЬ, если больше, то увеличить МЕСЯЦ на 1 и посчитать РАБДЕНЬ до платежа.

Вся трудность в расчленении дат и их соединении их из кусков. Поэтому пришлось заводить много дополнительных, вспомогательных ячеек и пытаться оперировать с ними.

 

Ответить

Serge_007

Дата: Четверг, 22.08.2013, 10:44 |
Сообщение № 4

Группа: Админы

Ранг: Местный житель

Сообщений: 15894


Репутация:

2623

±

Замечаний:
±


Excel 2016

Как понял:

Код

=ЕСЛИ(ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());D3)<СЕГОДНЯ();ЧИСТРАБДНИ(ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());D3);СЕГОДНЯ());ЧИСТРАБДНИ(СЕГОДНЯ();ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ())+1;D3)))

К сообщению приложен файл:

pay_day.xls
(38.5 Kb)


ЮMoney:41001419691823 | WMR:126292472390

 

Ответить

Pelena

Дата: Четверг, 22.08.2013, 11:02 |
Сообщение № 5

Группа: Админы

Ранг: Местный житель

Сообщений: 18797


Репутация:

4284

±

Замечаний:
±


Excel 2016 & Mac Excel

Как поняла

К сообщению приложен файл:

8416515.xls
(34.5 Kb)


«Черт возьми, Холмс! Но как??!!»
Ю-money 41001765434816

 

Ответить

MCH

Дата: Четверг, 22.08.2013, 12:46 |
Сообщение № 6

Группа: Админы

Ранг: Старожил

Сообщений: 2002


Репутация:

751

±

Замечаний:
±


Вся трудность в расчленении дат и их соединении их из кусков

А зачем даты раслчленять? Даты — это числа, к которым лего прибавлять/вычитать нужное количество дней, получая при этом новую дату
Работайте сразу с датами, не деля их на годы, месяцы, дни

 

Ответить

карандаш

Дата: Четверг, 22.08.2013, 19:36 |
Сообщение № 7

Группа: Проверенные

Ранг: Обитатель

Сообщений: 329


Репутация:

8

±

Замечаний:
0% ±


2010

Большое спасибо за помощь всем!

Теперь с помощью двух файлов-примеров от Pelena и Serge_007 удалось собрать файл-вопрос, на примере которого можно продемонстрировать то, что хотелось сократить.

с помощью предоставленных рабочих формул составил работающую схему.

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

2. В файле Pelen’ы есть формула

Код

=ЧИСТРАБДНИ(СЕГОДНЯ();ДАТАМЕС(E11;—(E11<$D$9)))

попробовал убрать двойной минус — получил непонятное значение.
что такое «двойной минус». Это же не С++

спасибо

К сообщению приложен файл:

pay2.xls
(33.5 Kb)

Сообщение отредактировал карандашЧетверг, 22.08.2013, 19:40

 

Ответить

Pelena

Дата: Четверг, 22.08.2013, 19:43 |
Сообщение № 8

Группа: Админы

Ранг: Местный житель

Сообщений: 18797


Репутация:

4284

±

Замечаний:
±


Excel 2016 & Mac Excel

что такое «двойной минус»

Читаем

Так всё таки, если расчетная дата попадает на субботу, реальная должна быть в пятницу накануне (Ваш первый файл) или в следующий понедельник (новый вариант)?

Вариант с именованной формулой (по последнему файлу)

К сообщению приложен файл:

3694636.xls
(31.5 Kb)


«Черт возьми, Холмс! Но как??!!»
Ю-money 41001765434816

 

Ответить

_Boroda_

Дата: Пятница, 23.08.2013, 01:21 |
Сообщение № 9

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Код

=ЧИСТРАБДНИ(E$3;КОНМЕСЯЦА(E$3;-(ДЕНЬ(E$3)<=D5))+D5;Лист2!A$2:A$35)-1+(ДЕНЬНЕД(КОНМЕСЯЦА(E$3;-(ДЕНЬ(E$3)<=D5))+D5;2)>5)

где в Лист2!A$2:A$35 список праздничных рабочих дней. Иначе будет ошибка.

К сообщению приложен файл:

pay2_1.xls
(39.0 Kb)


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

карандаш

Дата: Понедельник, 26.08.2013, 10:38 |
Сообщение № 10

Группа: Проверенные

Ранг: Обитатель

Сообщений: 329


Репутация:

8

±

Замечаний:
0% ±


2010

Так всё таки, если расчетная дата попадает на субботу, реальная должна быть в пятницу накануне (Ваш первый файл) или в следующий понедельник (новый вариант)?

да, новый вариант, как выяснилось (с первым вариантом перестраховался)

Большое спасибо, все работает как и хотелось. Подскажите, где можно увидеть содержимое формулы? (в VB не нашел, на странице тоже) хотелось бы проникнуться ))
(про — прочитал)

где в Лист2!A$2:A$35 список праздничных рабочих дней. Иначе будет ошибка.

Спасибо, понятно.
Пожалуйста, помогите ещё раз, сформируйте на основе вашего решения столбец числа оплаты. Виноват, не досмотрел, нужный в работе столбец оказался серым. Сам попробовал — ерунда получается — надо добавлять условия, но тогда все вырождается в мой предыдущий подход — длинный и без списка праздничных дней.
Это про столбец I

 

Ответить

Serge_007

Дата: Понедельник, 26.08.2013, 10:44 |
Сообщение № 11

Группа: Админы

Ранг: Местный житель

Сообщений: 15894


Репутация:

2623

±

Замечаний:
±


Excel 2016

где можно увидеть содержимое формулы?

Вариант с именованной формуло

— следовательно в именах Ctrl+F3


ЮMoney:41001419691823 | WMR:126292472390

 

Ответить

Содержание

  1. Функция РАБДЕНЬ
  2. Описание
  3. Синтаксис
  4. Замечания
  5. Пример
  6. Определение выходных дней в табеле
  7. Учет выходных и праздничных дней
  8. Перенос выходных дней
  9. Поиск ближайшего рабочего дня функцией РАБДЕНЬ (WORKDAY)
  10. Как определить / проверить дату выходного дня в Excel?
  11. Определите, является ли дата выходные с формулой
  12. С легкостью фильтруйте и выделяйте все выходные в столбце даты с помощью замечательного инструмента
  13. Excel проверить рабочий день или нет
  14. Относительные формулы
  15. Относительные функции
  16. Kutools for Excel — поможет вам выделиться из толпы

Функция РАБДЕНЬ

В этой статье описаны синтаксис формулы и использование функции РАБДЕНЬ в Microsoft Excel.

Описание

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

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

Синтаксис

Аргументы функции РАБДЕНЬ описаны ниже.

нач_дата — обязательный аргумент. Начальная дата.

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

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

Важно: Даты должны быть введены с использованием функции ДАТА или как результат вычисления других формул и функций. Например, для указания даты 23 мая 2008 г. воспользуйтесь выражением ДАТА(2008,5,23). Если ввести даты как текст, это может привести к возникновению проблем.

Замечания

В приложении Microsoft Excel даты хранятся в виде последовательных чисел, что позволяет использовать их в вычислениях. По умолчанию дате 1 января 1900 года соответствует номер 1, а 1 января 2008 года — 39448, так как интервал между этими датами составляет 39 448 дней.

Если какой-либо из аргументов не является допустимой датой, то workDAY возвращает #VALUE! значение ошибки #ЗНАЧ!.

Если start_date плюс дн. возвращает недействительные даты, то workDAY возвращает #NUM! значение ошибки #ЗНАЧ!.

Если значение аргумента «количество_дней» не является целым числом, оно усекается.

Пример

Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

Источник

Определение выходных дней в табеле

Для определения выходных дней (суббот и воскресений) воспользуйтесь функцией ДЕНЬНЕД, которая устанавливает номер дня недели. Эту функцию введите в ячейку С28:

В следующую ячейку — С29 — введите функцию ЕСЛИ:

Функция ЕСЛИ действует по описанной ниже схеме:

  • День недели, определенный в ячейке С28, — суббота?
  • Если да, возвращается значение ИСТИНА.
  • Если нет, переходим к следующему ЕСЛИ.
  • Если днем недели является воскресенье, возвращается значение ИСТИНА.
  • В противном случае возвращается значение ЛОЖЬ.

Учет выходных и праздничных дней

На следующем этапе нам предстоит создать формулу, которая при соблюдении одного из условий (праздничный день, выходной день или праздничный день, выпадающий на выходной) возвращает значение ИСТИНА. Мы предполагаем разместить эту формулу в ячейке СЗО.

Для решения задачи воспользуемся логической функцией ИЛИ. Эта функция возвращает значение ИСТИНА, если хотя бы один из ее аргументов имеет значение ИСТИНА, и значение ЛОЖЬ, если все аргументы имеют значение ЛОЖЬ.

Функция ИЛИ имеет следующий синтаксис:

Здесь логииеское_значение1, логическое_значение2, . — это от 1 до 30 проверяемых условий, которые могут иметь либо значение ИСТИНА, либо значение ЛОЖЬ.

Рис. 7.12. Панель функции ИЛИ

В первом аргументе нам необходимо указать адрес ячейки С29, в которой определяется день недели, а во втором аргументе — адрес ячейки С27, где устанавливаются даты праздников.

Формула в ячейке СЗО должна быть такой:

Произведем вложение функций:

  • Формулу из ячейки С25 вложим в формулу из ячейки С26:
  • — Полученную формулу вложим в формулу из ячейки С27:

Формулу из ячейки С28 вложим в формулу из ячейки С29:

Полученную формулу вложим в формулу из ячейки СЗО:

Перенос выходных дней

На практике нередки случаи переноса выходных дней. В нашем табеле реакция на такие переносы не обеспечена. Сейчас мы исправим этот недостаток. Даты дней, которые вследствие переноса стали рабочими, будем вводить в область G22:G24 листа Праздники. Этой области присвоим имя ДатаПеренос (рис. 7.13).

Даты дней, которые вследствие переноса стали выходными, добавим в список праздников, находящийся в диапазоне A15:G16 листа Праздники (рис. 7.5).

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

Рис. 7.13. Список с перемещенными датами

Скопируйте ее из строки формул, вставьте в ячейку С31, замените имя Да-таПраздн именем ДатаПеренос и удалите функцию НЕ.

Результирующая формула в ячейке С31 должна иметь следующий вид:

Формула возвращает значение ЛОЖЬ, если находит дату среди перенесенных, или значение ИСТИНА, если не находит. Таким образом, эта ячейка будет содержать значение ЛОЖЬ, если день вследствие переноса стал рабочим. Если же ячейка содержит значение ИСТИНА, значит, статус дня не изменился.

Теперь мы должны проанализировать значения ячеек С3О и С31. Первая содержит логическое значение, которое указывает на то, является ли день выходным либо праздничным. Логическое значение во второй ячейке отражает факт изменения статуса дня (то есть не стал ли он вследствие переноса выходных рабочим днем).

Формула для анализа должна работать так. День является выходным, если его статус не изменился (С31 содержит значение ИСТИНА), и он является праздничным, субботним или воскресным (СЗО содержит значение ИСТИНА). Во всех остальных случаях день будет рабочим.

Составить такую формулу можно с помощью функции И. Она возвращает значение ИСТИНА, если все аргументы имеют значение ИСТИНА, и значение ЛОЖЬ, если хотя бы один аргумент имеет значение ЛОЖЬ. Данная функция принадлежит к категории Логические и имеет следующий синтаксис:

Здесь логическое_значение1, логическое_значение2, . — это от I до 30 проверяемых условий, которые могут иметь либо значение ИСТИНА, либо значение ЛОЖЬ.

Введите в ячейку С32 такую функцию:

В данную функцию надлежит вложить формулы из ячеек СЗО и С31. Ниже показано, как выглядит результирующая формула в ячейке С32:

Скопируйте формулы из ячеек С27 и С32 в ячейки С10 и С11.

Источник

Поиск ближайшего рабочего дня функцией РАБДЕНЬ (WORKDAY)

Простая, но весьма частая задача у многих пользователей Microsoft Excel.

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

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

Первое, что обычно приходит в голову, это конструкция с вложенными проверками дней недели с помощью функций ЕСЛИ (IF) и ДЕНЬНЕД (WEEKDAY) . Что-то типа:

Т.е. если попали на субботу (ДЕНЬНЕД выдал 6 для даты доставки), то прибавляем еще 2 дня, чтобы сдвинуть на следующий понедельник. А если попали на воскресенье, то добавляем еще день. Не самая сложная формула.

На самом деле можно управиться существенно короче и изящнее 🙂

С 2007 года в Excel появилась функция РАБДЕНЬ (WORKDAY) , которая умеет сдвигать исходную дату на заданное количество рабочих дней, причем сдвиг может быть как положительным (в будущее), так и отрицательным (в прошлое). Фишка в том, что если взять предыдущий день от предполагаемой даты доставки и с помощью этой функции добавить к нему один рабочий день, то мы получим либо ту же самую дату (если были будни), либо ближайший понедельник (если доставка выпала на субботу или воскресенье). Что и требуется:

Приятным бонусом идет возможность указать список праздничных выходных дней, которые функция РАБДЕНЬ тоже будет воспринимать как нерабочие помимо суббот и воскресений. Диапазон с праздниками можно задать третьим аргументом:

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

Источник

Как определить / проверить дату выходного дня в Excel?

Иногда вам может потребоваться определить, приходится ли свидание на выходные, чтобы уладить личные дела. С помощью этого руководства вы узнаете, как определить или проверить, является ли данная дата выходным днем ​​в Excel.

Определить, является ли дата выходным днем, с помощью формулы
Легко фильтровать и выделять все выходные в столбце даты с помощью замечательного инструмента.

Определите, является ли дата выходные с формулой

Например, вы хотите, чтобы указанная ячейка была заполнена значением ИСТИНА, если заданная дата приходится на выходные, и заполнялась значением ЛОЖЬ, если дата не принадлежит в выходные вам поможет следующая формула.

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

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

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

С легкостью фильтруйте и выделяйте все выходные в столбце даты с помощью замечательного инструмента

С помощью Special Filter утилиты Kutools for Excel , вы можете легко отфильтровать выделение всех выходных в столбце даты в Excel. Пожалуйста, сделайте следующее.

Перед применением Kutools for Excel , пожалуйста, сначала загрузите и установите его .

1. Выберите столбец даты, в котором вы хотите проверить, является ли дата выходным, а затем нажмите Kutools Plus > Специальный фильтр > Специальный фильтр .

2. В диалоговом окне Специальный фильтр настройте следующее.

3. Затем появится диалоговое окно, в котором указано, сколько ячеек соответствует критериям, нажмите кнопку ОК.

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

Если вы хотите получить 30-дневную бесплатную пробную версию этой утилиты, нажмите, чтобы загрузить ее , а затем перейдите к применению операции в соответствии с вышеуказанными шагами.

Источник

Excel проверить рабочий день или нет

В Excel, чтобы проверить, является ли дата рабочим днем ​​(за исключением общих выходных и праздников), вы можете использовать функцию РАБДЕНЬ.

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

Общая формула:

WORKDAY(date-1,1,holidays)=date

Синтаксис и аргументы

Date:the date you want to check if is a workday.

Возвращаемое значение

Эта формула возвращается к логическому значению ИСТИНА или НЕВЕРНО. Когда формула возвращается в ИСТИНА, дата является рабочим днем, в противном случае дата не является рабочим днем, когда формула возвращается в ЛОЖЬ.

Как работает эта формула

В ячейках E3: E7 указаны праздники, теперь, чтобы проверить даты в списке B3: B7, если это рабочие дни, используйте формулу ниже:

=WORKDAY(B3-1,1,$E$3:$E$7)=B3

Нажмите Enter , чтобы получить первый результат проверки, а затем перетащите дескриптор автозаполнения в ячейку B7.

объяснение

WORKDAY функция: используется для добавления указанного количества рабочих дней к дате начала и возврата будущей или прошедшей даты в формате серийного номера.

= РАБДЕНЬ (B3–1,1; $ E $ 3: $ E $ 7)
=WORKDAY(«4/11/2020»,1, $E$3:$E$7)
= 4 апреля 13 г.

Внимание

С функцией РАБОЧИЙ ДЕНЬ, в разведке выходные дни — суббота и воскресенье, если у вас есть свои собственные выходные, вы можете использовать РАБДЕНЬ.МЕЖДУНАРОДНЫЙ функции.

Предположим, что выходные дни — понедельник и вторник, используйте формулу как:

=WORKDAY.INTL(B3-1,1,3,$E$3:$E$7)=B3

Номер выходного дня

Число Выходные дни
1 (по умолчанию) Суббота и воскресенье
2 Воскресенье и понедельник
3 Понедельник и вторник
4 Вторник и среда
5 Среда и четверг
6 Четверг и Пятница
7 Пятница и суббота
11 Только воскресенье
12 Только понедельник
13 Только вторник
14 Только среда
15 Только четверг
16 Только пятница
17 Только суббота

Относительные формулы

  • Считать будние дни только между двумя датами
    В этом руководстве представлены формулы для подсчета дней, исключая выходные и праздничные дни, между двумя датами.
  • Считать определенный день недели между двумя датами
    В этом руководстве представлена ​​формула для подсчета определенного дня недели между двумя заданными датами в Excel.
  • Считайте дни с сегодняшнего дня
    В этом руководстве представлена ​​лучшая формула для расчета разницы между датой и сегодняшним днем ​​в Excel.
  • Преобразование дня недели в диапазон дат
    Если есть список дат, как можно сосчитать определенный день недели в таком списке дат?

Относительные функции

  • Функция Excel WEEKNUM
    Возвращает номер недели указанной даты в году.
  • Функция РАБДЕНЬ в Excel
    Добавляет рабочие дни к заданной дате начала и возвращает рабочий день
  • Функция МЕСЯЦ в Excel
    МЕСЯЦ используется для получения месяца в виде целого числа (от 1 до 12) от даты.
  • Функция ДЕНЬ в Excel
    Функция ДЕНЬ получает день в виде числа (от 1 до 31) от даты
  • Функция Excel NOW
    Получить текущее время и дату

Kutools for Excel — поможет вам выделиться из толпы

Хотите быстро и качественно выполнять свою повседневную работу? Kutools for Excel предлагает мощные расширенные функции 300 (объединение книг, суммирование по цвету, разделение содержимого ячеек, преобразование даты и т. д.) и экономит для вас 80% времени.

  • Разработан для 1500 рабочих сценариев, помогает решить 80% проблем с Excel.
  • Уменьшите количество нажатий на клавиатуру и мышь каждый день, избавьтесь от усталости глаз и рук.
  • Станьте экспертом по Excel за 3 минуты. Больше не нужно запоминать какие-либо болезненные формулы и коды VBA.
  • 30-дневная неограниченная бесплатная пробная версия. 60-дневная гарантия возврата денег. Бесплатное обновление и поддержка 2 года.

Источник

Формула:

=ДЕНЬНЕД(A1;2)>5

То есть мы рассчитываем порядковый номер дня недели, который соответствует
заданной дате, и если этот день имеет номер 6 или 7 (суббота или 
воскресенье), то наша формула возвратит нам значение ИСТИНА,
что означает, что наша дата - выходной.
  • дата
  • Excel
  • vba

Понравилась статья? Поделить с друзьями:
  • Формула в excel да или нет с комментариями
  • Формула в excel график работы
  • Формула в excel вычисление месяца года
  • Формула в excel вытащить часть текста
  • Формула в excel вырезать текст