Динамический номер недели по отношению к году - PullRequest
1 голос
/ 21 мая 2019

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

enter image description here

Для ячейки C1 Я создал раскрывающийся список на основе B1 => =TEXT(TODAY();"[$-0809]mmmm"), а также недели (C2: C6) извлекаются функцией HLookup.

Идея состоит в том, что мне нужен только динамический формат Week, такой как C1: C6, но я не нашел другого выхода, кроме того, который использовал, и мне также нужно перенести его в VBA * 1014. *. Есть ли более простой способ? Я мог бы использовать ваши намеки / идеи. На новом листе, который экспортируется ежемесячно, мне нужно показывать 4/5 недель каждого месяца, которые отличаются от месяца к месяцу.

1 Ответ

3 голосов
/ 21 мая 2019

Используйте функцию Weeknum: =WEEKNUM(DATE(2019,3,1),2) вернет первую неделю месяца, а =WEEKNUM(EOMONTH(DATE(2019,3,1),0),2) вернет последнюю неделю месяца.

Так что ставь…

  • в B2 =WEEKNUM(DATE(YEAR(TODAY()),$B$1,1),2 )
  • в B3 =IFERROR(IF(B2+1<=WEEKNUM(EOMONTH(DATE(YEAR(TODAY()),$B$1,1),0),2 ),B2+1,""),"") и потяните его вниз, чтобы получить следующий результат:

enter image description here

Если вы теперь измените номер месяца в B1, он автоматически рассчитает остаток:

Обратите внимание, что существуют разные официальные системы нумерации недель, в то время как наиболее распространенной будет дата недели ISO . Это означает, что 1 января не всегда является номером 1 недели!

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