Как вычесть определенную c дату и посадить ее в будний день, считая выходные дни в вычитании? - PullRequest
1 голос
/ 04 февраля 2020

Поэтому мой вопрос заключается в том, как вычесть из заданных c дат при подсчете выходных и получении конечного результата в будний день. Например: если у меня есть даты в Column F и у меня есть вычитания / дополнения в столбцах B-E

Column B Subtracts 36 Days

Column C Subtracts 21 Days

Column D Adds 7 Days

Column E Subtracts 11 Days

Если в Column F, например, 1/26/2020 Столбцы в соответствии с приведенными выше уравнениями будут равны:

B - 12/21/2019

C - 1/5/2020

D - 2/2/2020

E - 1/15/2020

Я хотел бы, чтобы формула была, если она приземляется на Saturday вычитании 1 и приземляется на Friday, и если он приземлится на Sunday, добавьте 1 и приземлитесь на Monday, чтобы результат выглядел следующим образом:

B - 12/20/2019

C - 1/6/2020

D - 2/3/2020

E - 1/15/2020

Я попытался сделать формулу WORKDAY, но у меня неправильные даты, если я придерживаюсь приведенных выше уравнений. Есть ли способ написать формулу, которая будет по-прежнему считать WEEKENDS (суббота и воскресенье считаются выходными в этом примере) и сможет приземлиться на Friday вместо Saturday и приземлиться на Monday вместо Sunday

Любая помощь будет высоко ценится!

Ответы [ 4 ]

2 голосов
/ 04 февраля 2020

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

enter image description here

Формулы в строке 2 - это просто:

          Column B        Column C        Column D        Column E
Row 2:    =$F$2+B1        =$F$2+C1        =$F$2+D1        =$F$2+E1
Row 3:    =WEEKDAY(B2,1)  =WEEKDAY(C2,1)  =WEEKDAY(D2,1)  =WEEKDAY(E2,1)

Чтобы вычислить разницу во избежание выходных, вы должны будете использовать оператор IF. Таким образом, в моем примере данных ячейка B5 содержит формулу:

=IF(WEEKDAY($F$2+B$1)=7,($F$2+B$1)-1,IF(WEEKDAY($F$2+B$1)=1,($F$2+B$1)+1,($F$2+B$1)))
0 голосов
/ 04 февраля 2020

В B2, справа скопирована более короткая формула:

=B$1+$F2+TEXT(MOD(B$1+$F2,7)-1,"\0;-1;1")

enter image description here

0 голосов
/ 04 февраля 2020
B2: =$F2+B$1+CHOOSE(WEEKDAY($F2+B$1,16),-1,1,0,0,0,0,0)

enter image description here

0 голосов
/ 04 февраля 2020

Формула немного проще:

=((A1+A2)-(WEEKDAY(A1+A2,1)=7)+(WEEKDAY(A1+A2,1)=1))

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...