Вы сказали, что используете формулу =U1-WEEKDAY(U1)+6 с датой в ячейке U1 которая является субботой. Чтобы ответить на ваш вопрос, вам нужно решить, что вернет WEEKDAY(U1) .
Функция Excel WEEKDAY() берет дату и возвращает число от 1 до 7, обозначающее день недели. По умолчанию WEEKDAY возвращает 1 для воскресенья и 7 для субботы. Следовательно, в вашем случае WEEKDAY(U1) вернет 7. Это превратит вашу формулу в расчет U1-7+6 .
Иногда меня сбивает с толку то, что Excel не следует истинному правилу BODMAS. Это следует за формулой слева направо, если нет скобок. Сначала он вычислит все в скобках слева направо, а затем вычислит остаток слева направо. Если бы он следовал BODMAS, он вернул бы результат U1-13 .
В Excel ваша формула даст вам результат U1-1 (предыдущий день).
Если бы U1 была средой, это было бы U1-4+6 что дало бы вам 2 дня после дня в U1 . Вы видите, что делает формула?
Формула определяет, какая дата пятницы на неделе воскресенья-субботы для даты, указанной в U1 .
Если вы хотите, чтобы пятница была на неделе, следующей за датой в U1 вы можете заключить текущую формулу в квадратные скобки и добавить 7 при создании формулы =(U1-WEEKDAY(U1)+6)+7
Там будет проблема, хотя с этой формулой. Если вы измените свою начальную дату на среду, первая дата выплаты будет перенесена на пятницу следующей недели, в результате чего будет пропущен день выплаты.
Если вы хотите использовать исходную формулу, вам нужно будет использовать функцию IF() чтобы проверить, является ли U1 пятницей или раньше.
=IF(WEEKDAY(U1)=<6,U1-WEEKDAY(U1)+6,(U1-WEEKDAY(U1)+6)+7
Более эффективная формула для использования (короткая и без функций IF() )
= U1+(7-ДЕНЬНЕД (u1,2)+5)
Параметр ,2 в функции WEEKDAY() меняет формат дня недели с воскресенья на субботу на понедельник в воскресенье с понедельника = 1