Получить дату с номера недели в Google Таблицах

Если у меня есть 7-я неделя 2017 года, то какая дата недели является понедельником этой недели в Google Sheets?

Ответ 1

=DATE(B9,1,1)-WEEKDAY(DATE(B9,1,1),3)+7*(WEEKDAY(DATE(B9,1,1),3)>3)+7*(A9-1)

- это наименее сложная формула, которую я знаю, которая работает для номеров недель в Швеции (то есть Monday first day of week, ISO правила для недели 1).

Ответ 2

Короткий ответ (A1 == Неделя, B1 == Год):

=DATE(B1;1;1)+((A1-1)*7)-WEEKDAY(DATE(B1;1;1);3)

Длинный ответ:

DATE(<year>;1;1) // days since 1970 until the frist day of the year

плюс

((<week number>-1)*7) // how many days into the year is this week

минус

WEEKDAY(DATE(<year>;1;1);3) // how many extra days from previous year in first week

PS:

Предполагается, что в понедельник в качестве первого дня недели необходимо изменить аргументы для WEEKDAY, чтобы изменить его на воскресенье

Ответ 3

Из-за этого определения (https://en.wikipedia.org/wiki/Week) 4 января должно использоваться вместо 1-го. 4 января - первый день недели 1.

=DATE(B1;1;4)+((A1-1)*7)-WEEKDAY(DATE(B1;1;4);3)