Есть много способов сделать это, но попробуйте следующее:
=IF((WEEKDAY(TODAY())=5)+(WEEKDAY(TODAY())=6),TODAY(),TODAY()-VLOOKUP(WEEKDAY(TODAY()),{7,1; 1,2; 2,3; 3,4; 4,5},2,FALSE))
Эта формула основана на числах по умолчанию для рабочих дней в США, где воскресенье = 1. Если эта формула дает непредвиденные результаты, возможно, в вашем регионе понедельник = 1. В этом случае вам потребуется настроить следующее:
=IF((WEEKDAY(TODAY())=4)+(WEEKDAY(TODAY())=5),TODAY(),TODAY()-VLOOKUP(WEEKDAY(TODAY()),{6,1; 7,2; 1,3; 2,4; 3,5},2,FALSE))
Другие вещи, которые следует иметь в виду:
+
в (WEEKDAY(TODAY())=5)+(WEEKDAY(TODAY())=6) означает OR
(где *
означает AND
).
VLOOKUP
ищет день недели СЕГОДНЯ() в простом виртуальном массиве, который формируется между фигурными скобками и указывает, сколько дней нужно вычесть из СЕГОДНЯ(), учитывая текущий день недели, чтобы получить предыдущую пятницу.
person
Erik Tyler
schedule
13.03.2021