Перейти к содержанию

номнедели

Функция номнедели определяет номер недели для указанной даты.

Функция пригодится, когда номер недели необходимо использовать в документе, условиях или других выражениях.

Синтаксис

номнедели(дата, [формат_возврата])

Параметры:

  • дата — дата, для которой необходимо определить номер недели. Обязательный параметр;
  • формат_возврата — код, определяющий правила подсчёта недели. Необязательный параметр.

В качестве параметра дата можно использовать:

  • значение поля с датой;
  • значение поля с датой и временем;
  • текстовое значение, содержащее корректную дату;
  • результат другой функции, возвращающей дату;
  • выражение, результатом которого является дата.

Для параметра формат_возврата доступны значения от 11 до 17 и от 21 до 27.

Если параметр не указан, используется формат 11.

Возвращаемое значение

Функция возвращает номер недели в виде числа.

Например:

номнедели("12.08.2026")

Результат:

33

Такой же результат вернёт явное указание формата 11:

номнедели("12.08.2026", 11)

Результат:

33

Правила подсчёта недель

Форматы от 11 до 17 и от 21 до 27 используют разные правила определения первой недели года.

Форматы 11–17

Неделя, в которую попадает 1 января, считается первой неделей года.

Код определяет первый день недели:

  • 11 — понедельник;
  • 12 — вторник;
  • 13 — среда;
  • 14 — четверг;
  • 15 — пятница;
  • 16 — суббота;
  • 17 — воскресенье.

Например:

номнедели("01.01.2022", 11)

Результат:

1

Форматы 21–27

При таком способе подсчёта первые дни января могут относиться к последней неделе предыдущего года.

Первый день недели также определяется кодом:

  • 21 — понедельник;
  • 22 — вторник;
  • 23 — среда;
  • 24 — четверг;
  • 25 — пятница;
  • 26 — суббота;
  • 27 — воскресенье.

Например:

номнедели("01.01.2022", 21)

Результат:

52

При формате 27 для этой же даты результат также будет:

52

Примеры

Определение номера недели по значению поля

Если поле датаДокумента содержит:

03.09.2026

то выражение:

номнедели(датаДокумента)

вернёт:

36

Использование даты и времени

В функцию можно передать значение, содержащее дату и время:

номнедели("03.09.2026 15:53:21")

Результат:

36

Время не изменяет номер недели, который определяется по дате.

Ошибки

Функция возвращает ошибку, если:

  • обязательный параметр не содержит значения;
  • переданное значение не может быть обработано как корректная дата;
  • в формат_возврата указано значение вне допустимых диапазонов 11–17 и 21–27.

Например, значения 10, 18, 20 и 28 для параметра формат_возврата приведут к ошибке.

Связь с другими функциями

Функцию номнедели можно использовать с функциями, возвращающими или изменяющими дату.

Например, номер текущей недели можно получить с помощью функции сегодня:

номнедели(сегодня())

Номер недели для рассчитанной даты можно определить после её смещения:

номнедели(смещдат(исходнаяДата, 7))

Сначала функция смещдат рассчитывает новую дату, после чего номнедели определяет номер недели для полученного значения.