EXCEL isThisWeek () - PullRequest
       0

EXCEL isThisWeek ()

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

Я хотел бы получить формулу, которая бы возвращала true, если данная дата находится на этой неделе, например: допустим, что Today () - 18.02.2020. Я бы хотел, чтобы она возвращала true, если GivenDate () находится где-то между 16.02.2020 и 22.02.2020. Я также хотел бы получить формулу для isNextWeek ().

Ответы [ 2 ]

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

Предполагая, что ожидаемая дата находится в ячейке A1, получите предыдущий понедельник:

=TODAY()-WEEKDAY(TODAY(),2)+1

Получите грядущее воскресенье:

=TODAY()-WEEKDAY(TODAY(),2)+7

Вы можете изменить +1 на +8 для в следующий понедельник и с +7 до +14 на следующее воскресенье. Таким образом,

=IF(AND(A1>=(TODAY()-WEEKDAY(TODAY(),2)+1),A1<=(TODAY()-WEEKDAY(TODAY(),2)+7)),"YES","NO")

Это вернет YES, если A1 находится между понедельником и воскресеньем этой недели.

=IF(AND(A1>=(TODAY()-WEEKDAY(TODAY(),2)+8),A1<=(TODAY()-WEEKDAY(TODAY(),2)+14)),"YES","NO")

Это вернет YES, если A1 находится между понедельником и воскресеньем следующего неделя.

Я уверен, что это можно упростить.

1 голос
/ 18 февраля 2020

Для этой недели:

=AND(WEEKNUM(TODAY())=WEEKNUM(A1),YEAR(TODAY())=YEAR(A1))

Для следующей недели

=AND(WEEKNUM(TODAY())+1=WEEKNUM(A1),YEAR(TODAY())=YEAR(A1))

Одно примечание: это не удастся при смене нового года.

enter image description here


Для формулы, которая работает вне зависимости от того, в течение нового года:

Эта неделя:

 =MEDIAN(TODAY()-WEEKDAY(TODAY())+1,TODAY()-WEEKDAY(TODAY())+7,A1)=A1

Следующая неделя:

=MEDIAN(TODAY()-WEEKDAY(TODAY())+8,TODAY()-WEEKDAY(TODAY())+14,A1)=A1

enter image description here

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