
Общая формула
=date+7-WEEKDAY(date+7-dow)
Резюме
Чтобы вернуть следующий конкретный день недели (например, следующую среду, пятницу или понедельник) с заданной датой начала, вы можете использовать формулу, основанную на функции WEEKDAY. В показанном примере формула в D6:
=B6+7-WEEKDAY(B6+7-2)
Где B6 содержит дату пятницы, 16 января 2015 года, а 2 представляет понедельник, «доу». Результат - понедельник, 9 января 2015 года.
Чтобы получить другой день недели, используйте другое значение для «dow» в формуле. При настройках по умолчанию функция WEEKDAY использует схему, где воскресенье = 1, понедельник = 2, вторник = 3, среда = 4, четверг = 5, пятница = 6 и суббота = 7.
Объяснение
В Excel понятие «день недели» или «день недели» основано на идее, что каждый день недели имеет определенное число. При настройках по умолчанию функция WEEKDAY рассматривает воскресенье как первый день недели (1), а субботу как последний день (7). Если задана допустимая дата, функция ДЕНЬНЕД возвращает число от 1 до 7.
Чтобы найти следующий день недели, эта формула сначала перемещает дату вперед на 7 дней, а затем возвращается к правильной дате, вычитая результат вычисления с использованием функции ДЕНЬ НЕДЕЛИ. В показанном примере формулы в строке 6 выглядят следующим образом:
=B6+7-WEEKDAY(B6+7-7) // C6, get next Saturday =B6+7-WEEKDAY(B6+7-2) // D6, get next Monday
В первой формуле (C6) цифра 7 (в конце) представляет субботу. Во второй формуле (D6) число 2 для понедельника.
В D6 формула решается так:
=B6+7-WEEKDAY(B6+7-2) =42027-WEEKDAY(42025) =42027-4 =42023 =1/9/2015
Примечание: когда заданная дата уже является желаемым днем недели, будет возвращена исходная дата.
На следующий день недели с сегодняшнего дня
Чтобы получить следующий день недели с текущей даты, вы можете использовать функцию СЕГОДНЯ, например:
=TODAY()+7-WEEKDAY(TODAY()+7-dow)