ГОД () соответствует WEEKNUM(...,21) в Excel

Я ищу способ указать возврат 2015 для даты в течение этой недели, но в календарном году 2014. Эта текущая неделя по системе четверга - неделя 01/2015. Но функция Year все равно вернет 2014 год.

Примерно так: IF(AND(WEEKNUM(TODAY(),21)=52,WEEKNUM(TODAY()+7,21)<>53),YEAR(TODAY())+1,YEAR(TODAY())

но немного надежнее и элегантнее.

У кого-нибудь есть что-нибудь?

Счастлив счастлив

Бен-Сан -

1 ответ

Решение

"Год" недели определяется годом Thursday этой недели (при условии номера недели ISO), так что вы можете просто найти четверг, а затем получить год этой даты, т.е. для любой даты в A1

=YEAR(A1-WEEKDAY(A1,3)+3)

или, аналогично, на сегодняшнюю дату

=YEAR(TODAY()-WEEKDAY(TODAY(),3)+3)

Это работает для любой даты в любом году....... и может также указывать дни января в предыдущем году, например, 3 января 2016 года - в последнюю неделю 2015 года.

Другие вопросы по тегам