Номер недели в календаре excel

Номер недели по дате функцией НОМНЕДЕЛИ

Потребность знать номер рабочей недели для заданной даты (или группы дат) весьма востребованная вещь в управленческом учете. Понедельные отчеты, еженедельный контроль выполнения плана, недельная сетка вещания в рекламе – все это требует умения определять номер рабочей недели для заданной даты. Задача, на первый взгляд, простая, но (как всегда) есть несколько весьма существенных нюансов.

Во-первых, в разных странах отсчет начала и конца самой недели – различаются. У нас в России днем отсчета недели принят понедельник, а в других странах (например, США и Израиле) – воскресенье. 

Во-вторых, вопрос — какую неделю считать первой? На сегодняшний момент существуют как минимум два основных варианта с разной логикой. Рассмотрим их последовательно.

Способ 1. Стандарт ГОСТ ИСО 8601-2001 и функция НОМНЕДЕЛИ.ISO

Первой рабочей неделей года считается та, на которую выпадает первый четверг года (или 4 января, если хотите). Здесь логика проста. Первая неделя – это та, на которую пришлось больше трех дней (больше половины недели) из наступившего года. Некоторое неудобство в том, что в году получается когда 52, а когда 53 рабочих недели. Плюс ко всему 1 января может запросто оказаться 52 неделей предыдущего года.

Но именно этот вариант официально принят в России с 2002 года как государственный и остается им на данный момент (см. ГОСТ ИСО 8601-2001). Чтобы посчитать номер недели по дате по такой системе, можно использовать вот такую формулу:

=ОТБР(ОСТАТ(A1+3-ДЕНЬНЕД(A1;2);365,25)/7+1)

=TRUNC(MOD(A1+3-WEEKDAY(A1;2);365,25)/7+1)

В Excel 2013 функцию для расчета номера недели по ISO добавили в стандартный набор – она называется НОМНЕДЕЛИ.ISO (WEEKNUM.ISO)

Номер недели ISO

Способ 2. Неделя с 1-м января и функция НОМНЕДЕЛИ (WEEKNUM)

В этом случае первой неделей года считается та, на которую попадает 1 января. Здесь также возникает сложность в том, что в году может оказаться 52 или 53 недели и, плюс ко всему, 1 января может выпасть на воскресенье, т.е. шесть последних дней года могут оказаться уже в неделе с номером 1, что затрудняет отчетность. Тем не менее, если такой способ нумерации вам нужен, то его можно реализовать функцией НОМНЕДЕЛИ (WEEKNUM), появившейся в Excel начиная с 2007 года. Синтаксис этой функции таков:

=НОМНЕДЕЛИ(Дата; Тип_отсчета)

где

  • Дата — ячейка с датой, для которой нужно определить номер недели
  • Тип_отсчета — число (1, 2 или 3), обозначающее тип нумерации дней в неделе. Вариант 1 — американский (неделя начинается с воскресенья), вариант 2 — наш.

Номер недели функцией НОМНЕДЕЛИ

Ссылки по теме

  • Основные принципы работы с датами и временем в Microsoft Excel
  • Номер квартала по дате
  • Вычисление возраста или стажа в годах, месяцах, днях
  • Выпадающий календарь для удобного ввода даты из надстройки PLEX

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше

В этой статье описаны синтаксис формулы и использование функции НОМНЕДЕЛЬ
в Microsoft Excel.

Описание

Возвращает номер недели для определенной даты. Например, неделя, на которую приходится 1 января, считается первой неделей года, и для нее возвращается число 1.

Для этой функции могут использоваться две разные системы.

  • Система 1    Неделя, на которую приходится 1 января, считается первой неделей года, и для нее возвращается число 1.

  • Система 2    Неделя, на которую приходится первый четверг года, считается первой неделей, и для нее возвращается число 1. Эта методика определена в стандарте ISO 8601, который широко используется в Европе для нумерации недель.

Синтаксис

НОМНЕДЕЛИ(дата_в_числовом_формате;[тип])

Аргументы функции НОМНЕДЕЛИ описаны ниже.

  • Дата_в_числовом_формате     Обязательный. Дата, по которой определяется неделя. Даты должны вводиться с использованием функции ДАТА или как результат вычисления других формул и функций. Например, для указания даты 23 мая 2008 г. воспользуйтесь выражением ДАТА(2008,5,23). Если даты вводятся как текст, это может привести к возникновению проблем.

  • Тип     Необязательный. Число, которое определяет, с какого дня начинается неделя. Значение по умолчанию — 1.

Тип

Начало недели

Система

1 или опущен

Воскресенье

1

2

Понедельник

1

11

Понедельник

1

12

Вторник

1

13

Среда

1

14

Четверг

1

15

Пятница

1

16

Суббота

1

17

Воскресенье

1

21

Понедельник

2

Замечание

  • В приложении Excel даты хранятся в виде последовательных чисел, что позволяет использовать их в вычислениях. По умолчанию дате 1 января 1900 г. соответствует число 1, а 1 января 2008 г. — число 39 448, поскольку интервал между датами составляет 39 448 дней.

  • Если Serial_number находится вне диапазона для текущего базового значения даты, #NUM! возвращается ошибка.

  • Если Return_type находится вне диапазона, указанного в таблице выше, #NUM! возвращается ошибка.

Пример

Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

Данные

09.03.2012

Формула

Описание

Результат

=НОМНЕДЕЛИ(A2)

Номер недели в году, на которую припадает дата 09.03.2012, если неделя начинается в воскресенье (по умолчанию).

10

=НОМНЕДЕЛИ(A2;2)

Номер недели в году, на которую припадает дата 09.03.2012, если неделя начинается в понедельник (второй аргумент, т. е. 2).

11

Нужна дополнительная помощь?


Существует 2 способа определения номера недели: в соответствии со стандартом ИСО и с помощью функции

НОМНЕДЕЛИ()

.

Рассмотрим 2 способа определения номера недели:

Используя функцию НОМНЕДЕЛИ()

Функция

НОМНЕДЕЛИ()

считает, что первая неделя года начинается с 1-го января. В ней может оказаться от 1 до 7 дней (1 января соответственно попадает на воскресенье или понедельник) и, как следствие, первая неделя может начинаться не с понедельника. У этой функции есть второй аргумент

тип

, который может принимать значение 1 (первым днем недели считается воскресенье) или 2 (первым днем недели считается понедельник).


=НОМНЕДЕЛИ(A3;2)

Предполагается, что в ячейке

А3

находится дата. Формула определяет номер недели, которой принадлежит эта дата.

Альтернативой использованию функции

НОМНЕДЕЛИ()

с типом 2 (как принято в РФ) является формула (см.

файл примера

):

=1+ЦЕЛОЕ((A3-(ДАТА(ГОД(A3);1;2)-ДЕНЬНЕД(ДАТА(ГОД(A3);1;0))))/7)

Альтернативой использованию функции

НОМНЕДЕЛИ()

с типом 1 является формула:

=1+ЦЕЛОЕ((A3-(ДАТА(ГОД(A3);1;2)-ДЕНЬНЕД(ДАТА(ГОД(A3);1;1))))/7)

По стандарту ISO8601:2000 (ГОСТ ИСО 8601-2001)

По стандарту ISO8601:2000 все недели начинаются с понедельника и длятся 7 дней. Первой неделей считается та, на которую попадает первый четверг нового года (т.е. первая неделя должна содержать не менее 4 дней из нового года).

Формула для расчета номера недели по стандарту ИСО:

=ЦЕЛОЕ((A3-ДАТА(ГОД(A3-ДЕНЬНЕД(A3-1)+4);1;3)+ ДЕНЬНЕД(ДАТА(ГОД(A3-ДЕНЬНЕД(A3-1)+4);1;3))+5)/7)

Следствием того, что все недели начинаются с понедельника, может получиться так, что в первую неделю попадут дни из прошлого года.

Решение обратной задачи – когда известен номер недели, а нужно найти, например, дату последнего дня этой недели – приведено в статье

Последний день недели

.

НОМНЕДЕЛИ (функция НОМНЕДЕЛИ)

​Смотрите также​Просто и без​ Сергей сразу же​​ европейскому стандарту.»​​stulmart​

Описание

​ нужно чтобы ниже​ — dtmTemp) ​ цикла нужно указать​ файлы 1.PNG (14.04​ год — year(date).​ или 53 недели​ вещь в управленческом​ номер​

​ у нас на​Но способ, который был​Скачать последнюю версию​

  • ​1​​В этой статье описаны​ извратов:)​ правильно развенчал его​openid.mail.ru/mail/vlad3622340​: Nic70y, скажите пожалуйста,​

  • ​ был прописан интервал​​ 7 + 1​ х = номер​ КБ)​kolyambus55rus​ и, плюс ко​ учете. Понедельные отчеты,​«1»​ листе отображается и​ представлен выше, предусматривает​ Excel​

Синтаксис

​16​

​ синтаксис формулы и​Diana​

  • ​ примером 01.01.2010 -​​: Добрый день всем!​ если я на​ дат этой недели​ End If End​ первой строки с​KuklP​: По поводу месяца:​ всему, 1 января​ еженедельный контроль выполнения​. При установке значения​ дата, и день​ преобразование даты в​Существуют несколько способов отобразить​Суббота​ использование функции​

  • ​: Интересно, что-то ZVI​​ нулевая неделя.​Пример во вложении.​ следующей неделе, например​ (1 неделя -​ If Next xЕсли​

​ данными которые обрабатываем)​

​: kolyambus55rus, кто Вам​

​Dim thisDate As​

​ может выпасть на​

​ плана, недельная сетка​

​«3»​

​ недели одновременно.​

​ день недели. Существует​

​ день недели по​

​1​

​НОМНЕДЕЛИ​

​ не отвечает.​

​openid.mail.ru/mail/vlad3622340​

​Serge​

​ 22 числа поставлю​

​ 1.01.13 — 06.01.13).​

​ кто то будет,​

​Cells( x, 10)​

​ сказал, что на​

​ Date Dim thisMonth​

​ воскресенье, т.е. шесть​

​ вещания в рекламе​

​нумерация так же​

​Более того, если в​

​ ли вариант, чтобы​

​ введенной дате, начиная​

​17​

​в Microsoft Excel.​

​Он обычно всегда​

​: Просто у меня​

​: Vlad, 01.012010, это​

​ «нет» в той​

​Pelena​

Замечание

  • ​ как и я,​ = MonthName(Month(Cells( x,​ форуме по Эксель​ As Integer thisDate​ последних дней года​ – все это​ будет происходить с​ ячейке изменить значение​ оба эти значения​ от форматирования ячеек​Воскресенье​Возвращает номер недели для​ находит решения не​

  • ​ перед глазами календарик​ какая неделя?​ ячейке, то будет​: Была похожая тема​ искать, думаю пригодиться.​

  • ​ 8).Value))​ уместно выкладывать картинки?​ = Worksheets(«1».Cells(1 +​ могут оказаться уже​ требует умения определять​

Пример

​ понедельника, но в​ даты, то соответственно​ выводились на листе?​ и заканчивая применением​1​ определенной даты. Например,​ в стандартных ситуациях​ в Excel на​Inter_E​ вычисляться уже следующая​Hugo​Всем большое спасибо, редко​Vitallic​

​- офигенно удобно!​

​ i, thisMonth =​

​ в неделе с​

​ номер рабочей недели​

​ этом случае понедельнику​

​ автоматически изменится и​

​ То есть, если​ функций. Давайте взглянем​21​ неделя, на которую​ :)​

​ любой вводимый год​

​: ..ответ​

​ среда, т.е. 28.03​: У меня кстати​ найдешь такой форум​: Можно почитать Вокенбаха​ А так не​ Month(thisDate) Worksheets(«1».Cells(1 +​

​ номером 1, что​

support.office.com

Установка дня недели по дате в Microsoft Excel

День недели в Microsoft Excel

​ для заданной даты.​ будет присвоен порядковый​ день недели. Таким​ в одной ячейке​ на все существующие​Понедельник​ приходится 1 января,​Z​ с номерами всех​конечно читал, но​ ?​ НОМНЕДЕЛИ() не работает…​ где тебе сразу​ (указаную выше книгу),​ проще, одной строкой:​

​ i, 10) =​ затрудняет отчетность. Тем​

Отображение дня недели в Экселе

​ Задача, на первый​ номер​ образом, меняя дату​ мы вводим дату,​ варианты выполнения указанной​2​ считается первой неделей​: 1 — «*Для​ недель.​ не полностью все​Che79​И кстати -​ помогут!​

Способ 1: применение форматирования

​ еще Б.Джелен -​MsgBox MonthName(Month([a1]))​ thisMonthНе получается.) Извините​ не менее, если​ взгляд, простая, но​«0»​ можно узнавать на​ то в другой​ операции в Экселе,​В приложении Excel даты​ года, и для​

  1. ​ этой функции могут​Я нашёл закономерность​ детали.​: Другой день​ эти номера недель​

    Дата в Microsoft Excel

  2. ​p.s. 29 декабря​ Застосування VBA і​еще:​ за тупость, я​​ такой способ нумерации​​ (как всегда) есть​

    Переход в окно форматирования в Microsoft Excel

  3. ​.​ какой день недели​​ должен выводиться день​​ чтобы пользователь мог​ хранятся в виде​ нее возвращается число​ использоваться две разные​​ для № первой​​На мобильном телефоне​=ОСТАТ(A1+1-СЕГОДНЯ();7)+СЕГОДНЯ()​​ тоже бывает по​​ 2014 года распознала​​ макросів у Excel.​​MsgBox format([a1], «MMMM»)​ только учусь…​

    ​ вам нужен, то​

    ​ несколько весьма существенных​Аргумент​​ она будет приходиться.​​ недели. Да, такой​

    Окно форматирования в Microsoft Excel

  4. ​ выбрать самый лучший​ последовательных чисел, что​ 1.​ системы.​ недели, слепил по​ вроде правильно показывает.​В A1 -​ разному считаются.​ как 1-я неделя​

День недели отобразился в ячейке в Microsoft Excel

​Лично я рекомендовал​​?​​Vitallic​ его можно реализовать​​ нюансов.​​«Тип»​Урок:​

​ вариант существует. Его​

Окно формат ячеек в Microsoft Excel

​ из них для​ позволяет использовать их​Для этой функции могут​Система 1 Неделя,​

Краткое отображение дня недели в Microsoft Excel

​ ней формулу и​​ А он как​ выпадающий список с​

Способ 2: использование функции ТЕКСТ

​_Boroda_​ (что правильно) а​ бы в таком​в а1 -​: Попробуйте:​ функцией НОМНЕДЕЛИ (WEEKNUM),​Во-первых, в разных странах​не является обязательным.​Мастер функций в Экселе​ можно осуществить при​ конкретной ситуации.​ в вычислениях. По​ использоваться две разные​ на которую приходится​ для очистки совести​ узнает?​​ номерами дней недели​​: как-то так​ 30 и 31​ порядке:​ дата.​sub tt ()​

  1. ​ появившейся в Excel​ отсчет начала и​ Но, если его​Имеется ещё один оператор,​ помощи формулы​​Прежде всего, посмотрим, как​​ умолчанию дате 1​ системы.​

    Переход в Мастер функций в Microsoft Excel

  2. ​ 1 января, считается​​ протестировал её всеми​​Просто я обрабатываю​​ (1-пн, 2-вт…)​​jakim​ как 53. :?:​​1. Вокенбах​​kolyambus55rus​

    Переход в окно аргументов функции ТЕКСТ в Microsoft Excel

  3. ​ Dim x% ,​​ начиная с 2007​​ конца самой недели​ опустить, то считается,​ который может выводить​ТЕКСТ​ при помощи форматирования​

    ​ января 1900 г. соответствует​

    ​Система 1​​ первой неделей года,​​ годами с 2009​ базу дат в​Nic70y​: Может так?​k61​2. Джелен​: конечно проще.) Спасибо!​ lr% lr =​ года. Синтаксис этой​ – различаются. У​ что значение аргумента​

    ​ день недели по​​. В этом случае​​ ячеек можно отобразить​ число 1, а​    Неделя, на которую приходится​ и для нее​ по 2040 -​ 500 000 строк​​: нет 21.03​​jakim​​: Сократим:​​Юрий М​

    ​Представляю ваше возмущение,​ ActiveSheet.Cells(Rows.Count, 8).End(xlUp).Row for​​ функции таков:​​ нас в России​

    Окно аргументов функции ТЕКСТ в Microsoft Excel

  4. ​ равно​ заданной дате. Это​ нужное нам значение​ день недели по​ 1 января 2008​ 1 января, считается​ возвращается число 1.​ всё правильно считает.​Здесь наверно мое​stulmart​

Результат обработки данных функцией ТЕКСТ в Microsoft Excel

​: Можно и так.​Sub www() Dim​: Загляните ещё​ я сам, когда​ x = 1​=НОМНЕДЕЛИ(Дата; Тип_отсчета)​ днем отсчета недели​«1»​ функция​

Данные изменены в Microsoft Excel

​ будет выводиться в​​ введенной дате. Данный​

Способ 3: применение функции ДЕНЬНЕД

​ г. — число 39 448,​ первой неделей года,​Система 2 Неделя,​Синтаксис попытался описать​ быстрое решение ето​​: Nic70y, а нужно​​Lans​ x&, lr& lr​KuklP​ кто то делает​ to lr step​где​ принят понедельник, а​, то есть, неделя​ДЕНЬНЕД​

  1. ​ указанную ячейку в​ вариант подразумевает преобразование​ поскольку интервал между​​ и для нее​​ на которую приходится​

    Вставить функцию в Microsoft Excel

  2. ​ в сообщении в​​ просто отнимать цифру​​ чтобы была следующая​: Выкладываю свое решение.​​ = ActiveSheet.Cells(Rows.Count, 8).End(xlUp).Row​​: Я просто показал,​​ глупости, так же​​ 1 Cells(1+x,10)=month(cells(1+x,8).value) Next​Дата​​ в других странах​​ начинается с воскресенья.​

    Переход в окно аргументов функции ДЕНЬНЕД в Microsoft Excel

  3. ​. Правда, она выводит​ текстовом формате.​​ даты в указанное​​ датами составляет 39 448​ возвращается число 1.​

    ​ первый четверг (!!!-Z)​

    ​ 10:43.​​ «1»? Или как​​ среда, т.е. 28.03.2018​ Решил, что лучше​ For x =​ как можно извлечь​

    ​ реагирую.​​ x End sub​​- ячейка с​​ (например, США и​​ Так принято в​​ не название дня​​Записываем дату на любом​ значение, а не​ дней.​Система 2​​ года, считается первой​​Наверняка можно короче,​ то подругому можно​sboy​ сделать определение начала​ 2 To lr​​ название месяца из​​Vitallic​​китин​​ датой, для которой​ Израиле) – воскресенье.​ англоязычных странах, но​ недели, а его​ элементе листа. Затем​​ сохранение отображения обоих​​Если значение «дата_в_числовом_формате» находится​​    Неделя, на которую приходится​​ неделей, и для​ но это -​ настроить неделю?​: 22 на этой​ недели в одной​ Step 1 Cells(x,​​ даты без цикла.​​: , я так​

    ​: номер недели​​ нужно определить номер​​Во-вторых, вопрос — какую​ нам данный вариант​ номер. При этом​ выделяем любую пустую​ этих видов данных​​ вне диапазона для​​ первый четверг года,​ нее возвращается число​ к формулистам.​Serge​ неделе… а формула​ ячейке.​ 10) = MonthName(Month(Cells(x,​​ msgbox только для​​ понимаю ТС нужно​​=НОМНЕДЕЛИ(A2;2)номер месяца​​ недели​

    ​ неделю считать первой?​ не подходит. Поэтому​​ пользователь может устанавливать​​ ячейку. Щелкаем по​

    Окно аргументов функции ДЕНЬНЕД в Microsoft Excel

  4. ​ на листе.​ текущего базового значения​ считается первой неделей,​ 1.»​kim​: Если идти таким​​ от​​stulmart​

Результат обработки данных функцией ДЕНЬНЕД в Microsoft Excel

​ 8).Value)) ‘ Определяем​ примера. Переписывать код​ циклом пройтись по​=МЕСЯЦ(A2)​Тип_отсчета​ На сегодняшний момент​

Изменение даты в Microsoft Excel

​ в поле​​ с какого дня​ пиктограмме​

​Вводим любую дату, содержащую​ даты, возвращается ошибка​ и для нее​2 — Кто​: =СУММПРОИЗВ(—(ДЕНЬНЕД(СТРОКА(ИНДЕКС(A:A;ДАТА(ГОД(A1);1;1)):ИНДЕКС(A:A;A1));2)=7))+(ДЕНЬНЕД(A1;2)<>7)​ путём, то =НОМНЕДЕЛИ(дата;2)-1​Nic70y​: Помогите пожалуйста! Перерыл​ месяц Cells(x, 9)​ автора с картинки,​ таблице в которой​что мешает просто​- число (1,​ существуют как минимум​«Тип»​ (с воскресенья или​«Вставить функцию»​ данные о числе,​ #ЧИСЛО!.​ возвращается число 1.​ в какой стране-государстве,​Diana​ попроще будет?​, с 22.03 по​

​ все что можно,​

lumpics.ru

Номер недели по дате функцией НОМНЕДЕЛИ

​ = DateDiff(«ww», DateSerial(Year(Cells(x,​ знаете ли, ни​ 100 000 строк​ протянуть 2 колонки?​ 2 или 3),​ два основных варианта​ставим значение​ с понедельника) нумерация​, которая расположена возле​ месяце и годе,​Если значение «тип» не​ Эта методика определена​ какая локаль и​: Это я тоже​Serge​ 28.03 будет показывать​ никак не пойму​ 8).Value) — 1,​

​ времени, ни желания​с помощью msgbox​kolyambus55rus​ обозначающее тип нумерации​ с разной логикой.​«2»​ будет отсчитываться.​ строки формул.​ в ячейку на​ входит в диапазон,​

​ в стандарте ISO​ т.п. Недели ведь​ не пропущу :)​: Думаю правильней будет​ 28.03​ как вычислить дату​ 12, 31), _​

Способ 1. Стандарт ГОСТ ИСО 8601-2001 и функция НОМНЕДЕЛИ.ISO

​ не было.​ это будет утомительно​:​ дней в неделе.​ Рассмотрим их последовательно.​.​Выделяем ячейку для вывода​Происходит запуск окошка​ листе.​ указанный в таблице​ 8601, который широко​ тоже разные:-)​=ОКРУГЛ((A1-ДАТА(ГОД(A1-ДЕНЬНЕД(A1-1)+4);1;3)+ДЕНЬНЕД(ДАТА(ГОД(A1-ДЕНЬНЕД(A1-1)+4);1;3))+5)/7;0)​ определять день недели​stulmart​ по реальному дню​ Cells(x, 8).Value, vbFirstFourDays)​kolyambus55rus​ (долго) да и​китин​ Вариант 1 -​

​Первой рабочей неделей года​После выполнения указанных действий​ номера дня недели.​Мастера функций​Кликаем по ячейке правой​ выше, возвращается ошибка​ используется в Европе​Z.​openid.mail.ru/mail/vlad3622340​ и считать их​: sboy, ок спасибо.​ недели. Задача рассчитать​

​ + 1 ‘и​

​: В итоге, в​

​ как потом анализировать​я бы с​ американский (неделя начинается​ считается та, на​ щелкаем по кнопке​ Щелкаем по значку​​. Переходим в категорию​

Номер недели ISO

Способ 2. Неделя с 1-м января и функция НОМНЕДЕЛИ (WEEKNUM)

​ кнопкой мыши. Запускается​ #ЧИСЛО!.​ для нумерации недель.​89623​: Добрый день!​ количество с начала​ Просто он написал​ дату звонка клиенту​ номер недели Next​ общий код макроса,​ (фильтровать?)​ удовольствием все на​ с воскресенья), вариант​ которую выпадает первый​«OK»​«Вставить функцию»​«Текстовые»​ контекстное меню. Выбираем​Скопируйте образец данных из​НОМНЕДЕЛИ(дата_в_числовом_формате;[тип])​Z​Извиняюсь, но по​ года. Правда никогда​ что 21.03​ если он не​ x End Sub​ для определения месяца​

​, не учел​

​ формула привязал, но​

  • ​ 2 — наш.​​ четверг года (или​.​.​и из списка​
  • ​ в нем позицию​​ следующей таблицы и​Аргументы функции НОМНЕДЕЛИ описаны​: Вариант для Inter_E​ вышеприведённым формулам уважаемых​ этим не заморачивался…​Inter_E​ пришел на консультацию.​ re:P.S. ГОСТ ИСО​

Номер недели функцией НОМНЕДЕЛИ

planetaexcel.ru

Узнать номер недели, месяца и года по дате в ячейке (VBA)

​ и недели, я​​ в предыдущем макросе​ строк с данными​
​kolyambus55rus​ 4 января, если​Как видим, в указанную​Снова открывается окошко​ операторов выбираем наименование​«Формат ячеек…»​​ вставьте их в​​ ниже.​ (Astana_KZ)- «=НОМНЕДЕЛИ(A2;21)».​ kim и Diana​Serge​
​: Добрый день!​ Звонить надо каждую​ 8601-2001, п.2.17 «…Первой​ вставил следующий код:​ что так много​ свыше 100 000​: Всем доброго времени​ хотите). Здесь логика​ ячейку выводится порядковый​Мастера функций​«ТЕКСТ»​
​.​ ячейку A1 нового​Дата_в_числовом_формате​

​Z.​​ Tailor получается, что​: Это я Владу​(прикр.файл)​ среду. В ячейке​ календарной неделей года​’ Определяем месяц​ строк, а потому​ и любая формула​ суток!!!​ проста. Первая неделя​ номер дня недели,​. На этот раз​.​Запускается окно форматирования. Перемещаемся​

​ листа Excel. Чтобы​​     Обязательный. Дата, по​
​97277​ сегодня 38-я неделя.​

​ писал, в ответ​​Хотел использовать формулу​
​ где должна ставиться​ считают первую неделю,​ Dim x&, lr&​тип переменных надо​ порядком увеличивает размер​Перерыл интернет (может​ – это та,​ который соответствует введенной​ переходим в категорию​Открывается окно аргументов функции​

​ во вкладку​​ отобразить результаты формул,​
​ которой определяется неделя.​lapink2000​Но по европейскому​ на​ =номнедели() для сегодняшнего​ отметка «пришел /​ содержащую первый четверг​ lr = ActiveSheet.Cells(Rows.Count,​

​ обьявить как long​​ файла.​
​ плохо рыл раз​
​ на которую пришлось​
​ дате. В нашем​«Дата и время»​

​ТЕКСТ​​«Число»​​ выделите их и​​ Даты должны вводиться​: На всякий случай,​ стандарту сегодня 37-я​=ЕСЛИ(ДЕНЬНЕД(ДАТА(ГОД(A2);1;1);2) :)​ числа, но что​ да» или «не​ текущего года». 29​ 8).End(xlUp).Row For x​:(

​ (или &)​​seregeyss​ не нашел), литературку​ больше трех дней​ случае это число​. Выбираем наименование​. Данный оператор призван​, если оно было​ нажмите клавишу F2,​ с использованием функции​ велосипед уже изобретен​
​ неделя, т.к. 1​Serge​ то неправильно показывает.​

​ пришел / нет»​​ декабря 2014 года​ = 2 To​Vitallic​: Sub Макрос1() ‘​ полистал, но так​ (больше половины недели)​«3»​«ДЕНЬНЕД»​ выводить указанное число​ открыто в какой-нибудь​ а затем —​ ДАТА или как​
​ — важно выбрать​

​ янв. 2010г. было​​: Не, это я​ В панели управлений​ — проставлено значение​ это 53-я неделя.​

​ lr Step 1​​: месяц меняйте на​ ‘ Макрос1 Макрос​

​ и не нашел​​ из наступившего года.​, которое обозначает среду.​и жмем на​ в выбранном варианте​ другой вкладке. Далее​ клавишу ВВОД. При​

​ результат вычисления других​​ нужную модель :)​ пятницей и это​ фигнню каку-то написал,​ все на Русском​
​ «нет». В другой​kolyambus55rus​ Cells(x, 10) =​
​ свой (не очень​
​ ‘ ‘ ActiveCell.FormulaR1C1​
​ метод определения по​
​ Некоторое неудобство в​
​Как и с предыдущей​ кнопку​

​ текстового формата. Он​​ в блоке параметров​:)
​ необходимости измените ширину​ формул и функций.​Diana​ была не первая,​ это совсем не​:)

​ стоит, не Америка,​​ ячейке нужно написать​:​ MonthName(Month(Cells(x, 8).Value)) ‘и​ ориентируюсь в русских​ = «=WEEKNUM(RC[-1])» Range(«C2».Select​
​дате в ячейке​ том, что в​ функцией, при изменении​«OK»​ имеет следующий синтаксис:​
​«Числовые форматы»​ столбцов, чтобы видеть​ Например, для указания​: Ну вот, скачала​
​ а 52-я неделя.​ продуктивно…​ метрическая система стоит.​

​ что-то вроде (если​​k61​ неделю dtmTemp =​ названиях ) и​ ActiveCell.FormulaR1C1 = «=MONTH(RC[-2])»​номеров недели, месяца​
​ году получается когда​ даты автоматически изменяется​.​=ТЕКСТ(Значение;Формат)​устанавливаем переключатель в​ все данные.​ даты 23 мая​ и приложила :)​Честно говоря, не​openid.mail.ru/mail/vlad3622340​ Вроде все норма.​

​ в той ячейке​​,Супер! Спасибо!​ DateSerial(Year(Cells(x, 8)), 1,​ добавте недостающие​ Range(«D2».Select ActiveCell.FormulaR1C1 =​ и года. Попадались​ 52, а когда​
​ номер дня недели​Производится переход в окно​В поле​ позицию​Данные​ 2008 г. следует​ (вдруг кому лень)​ могу найти отличия​: Вот такой монстр​Не могу разобраться​ «нет», то в​kolyambus55rus​

​ 1) Do While​​sub tt ()​ «=TEXT(RC[-3],»»ММММ»»» Range(«E2».Select ActiveCell.FormulaR1C1​ похожие но не​ 53 рабочих недели.​ в ячейке, в​ аргументов оператора​«Значение»​
​«Все форматы»​09.03.2012​ воспользоваться выражением ДАТА(2008;5;23).​

​ (92 КБ).​​ результатов этих формул​ получился. Зато универсально​ в чем проблема?​ этой ячейке -​:​
​ Weekday(dtmTemp, vbMonday) <>​ Dim x& ,​ = «=YEAR(RC[-4])» Range(«B2:E2».Select​
​ то.​
​ Плюс ко всему​

​ которой установлен оператор.​​ДЕНЬНЕД​

​нам нужно указать​​. В поле​Формула​ Если даты вводятся​Все говорим спасибо​ от НОМНЕДЕЛИ().​ для любой даты​Нужна, помощь. Спасибо​ дата каждой среды​k61​ 1 dtmTemp =​

​ lr& Dim a​​ Selection.AutoFill Destination:=Range(«B2:E100», Type:=xlFillDefault​Суть в том​ 1 января может​Урок:​. Он имеет следующий​
​ адрес той ячейки,​«Тип»​Описание​ как текст, это​ KL и сайту​Diana​ любого года:​ заранее!​ этого года). Что-то​,сейчас только заметил, вот​ dtmTemp + 1​ a = array(«січень»,»лютий»,»березень»)’​ Range(«B2:E100».Select End Sub​ что есть столбец​ запросто оказаться 52​Функции даты и времени​ синтаксис:​ в которой содержится​вручную вводим следующее​Результат​ может привести к​Тему, думаю, можно​: Прошу прощения, «техзадания»​=ЕСЛИ(ДЕНЬНЕД(ДАТА(ГОД(A2);1;1);2) См. пример​Serge​ вроде =ЕСЛИ(F5=»нет»; а​ такая картина наблюдается​ Loop If dtmTemp​ здесь поменяйте на​Записано макрорекодером по​ с датами (21.01.2014)​ неделей предыдущего года.​ в Экселе​=ДЕНЬНЕД(дата_в_числовом_формате;[тип])​ дата. Для этого​ значение:​=НОМНЕДЕЛИ(A2)​ возникновению проблем.​ закрывать.​ не читала :)​openid.mail.ru/mail/vlad3622340​: Здравствуйте.​ дальше не знаю.​ да 30 000​ >= DateSerial(Year(Cells(x, 8)),​ нужное lr =​ формулам Китина и​ , рядом мне​Но именно этот вариант​Как видим, в Экселе​В поле​:)
​ устанавливаем курсор в​ДДДД​Номер недели в году,​Тип​ ;)
​alexandr437​В таком случае​: Извиняюсь, пропустил одно​А Вы справку​ ((​ строк вниз:​

​ 1, 5) Then​​ ActiveSheet.Cells(Rows.Count, 8).End(xlUp).Row for​
​ все работает​ необходимо вывести номер​ официально принят в​ существуют три основных​«Дата в числовом формате»​ указанное поле и​После этого щелкаем по​ на которую припадает​     Необязательный. Число, которое​: предлагаю продолжить тему:​ формула Влада действительно​ условие. Вот теперь​ по этой функции​Nic70y​Я про строку​ dtmTemp = dtmTemp​ x = 1​kolyambus55rus​ недели и месяц,​ России с 2002​ варианта представления даты​вводим конкретную дату​ левой кнопкой мыши​ кнопке​

​ дата 09.03.2012, если​​ определяет, с какого​​ как сделать так​​ универсально работает. Написала​

​ точная формула (монстр​​ читали?​​: все ~53 среды?​​ 23959 и ниже….​ — 7 If​ to lr step​: спасибо большое!!! Может​

​ каким способом это​ года как государственный​

​ в виде дня​​ или адрес ячейки​ щелкаем по этой​«OK»​

​ неделя начинается в​​ дня начинается неделя.​​ чтобы и год​​ другой вариант (но​ подрос :-)​

​»Функция НОМНЕДЕЛИ​​мож так сойдет​Юрий М​ Cells(x, 8) >=​

​ 1 Cells(1+x,10)=a(month(cells(1+x,8).value)-1) Next​​ литературку грамотную подскажите,​

​ можно сделать в​​ и остается им​ недели. Все они​

planetaexcel.ru

Возможно ли сопоставить номер недели с интервалом дат? (Формулы)

​ на листе, в​​ ячейке на листе.​внизу окна.​ воскресенье (по умолчанию).​ Значение по умолчанию​
​ для недели определялся?​ он в два​=ЕСЛИ(ДЕНЬНЕД(ДАТА(ГОД(A2);1;1);2)​Описание​=ЕСЛИ(B1=»нет»;ОСТАТ(4-СЕГОДНЯ();7)+СЕГОДНЯ();»»)​: Проверьте, где в​ DateSerial(Year(Cells(x, 8)), 12,​

​ x End sub​​ чтоб я не​

​ VBA? (ч/з формулы​​ на данный момент​ относительно просты и​
​ которой она содержится.​ Адрес тут же​Как видим, в ячейке​10​

​ — 1.​​ например 1015, т.е.​

​ с половиной раза​​Смысл:​

​Возвращает число, которое​​stulmart​

​ восьмом столбце заканчиваются​​ 29) Then Temp​kolyambus55rus​ «мусорил» в форумах?)​ слишком тяжело, т.к.​ (см. ГОСТ ИСО​

excelworld.ru

вычисление даты по дню недели (Формулы/Formulas)

​ не требуют от​​В поле​ отобразится.​ вместо даты отобразилось​=НОМНЕДЕЛИ(A2;2)​Тип​ 2010 год, 15​ длиннее, выкладывать не​- если 1.1.тек.года​ указывает, на какую​: Nic70y, не не​ данные.​ = DateSerial(Year(Cells(x, 8)),​: Я вот так​ Я скачал «Уокенбах​ очень много данных)​ 8601-2001). Чтобы посчитать​ пользователя наличия каких-то​«Тип»​В поле​ полное наименование дня​Номер недели в году,​Начало недели​ неделя.​ буду).​ < пятницы, то​ неделю года приходится​ все среды, а​

​kolyambus55rus​​ 12, 31) Do​%)​ забил, всё работает​​ Дж. - Excel​

​Спасибо заранее!!! Прикрепленные​​ номер недели по​ специфических умений. Один​задается число от​«Формат»​ недели ей соответствующего.​ на которую припадает​

​Система​​vikttur​openid.mail.ru/mail/vlad3622340​

​ № недели считает​​ указанная дата.​​ каждая ближайшая среда,​​:​ While Weekday(Temp, vbMonday)​

​ (только в конце​​ 2010. Профессиональное программирование​ файлы Безымянный.PNG (50.46​ дате по такой​ из них заключается​1​в зависимости от​ При этом, выделив​

​ дата 09.03.2012, если​​1 или опущен​: ГОД()-2000&НОМНЕДЕЛИ()​: Интересно, а как​ Excel, в противном​Важно. В функции​ только чтобы была​Юрий М​ <> 1 Temp​ пробивает 4 лишних​

​ на VBA -​​ КБ)​​ системе, можно использовать​​ в применении специальных​до​ того, какое мы​ данную ячейку, в​

​ неделя начинается в​​Воскресенье​

​Guest​​ даже в простеньких​ случае:​ НОМНЕДЕЛИ предполагается, что​

​ указана дата этой​​, Там же где​ = Temp -​ декабря, но это​​ 2012″. Я так​​wowick​ вот такую формулу:​ форматов, а два​

​3​​ хотим иметь представление​ строке формул вы​ понедельник (второй аргумент,​

excelworld.ru

Номер недели. (формула, проблемка)

​1​​: думаю что не​
​ моб. телефонах номера​
​- если неделя​ неделя, на которую​ ближайшей среды)​ и на скриншоте.​ 1 Loop If​ не критично)​ понял главное выучить​: 2014-ый год начался​=ОТБР(ОСТАТ(A1+3-ДЕНЬНЕД(A1;2);365,25)/7+1)​
​ других для достижения​, которое определяет, как​
​ дня недели полное​ все равно увидите​

​ т. е. 2).​​2​

​ получится использовать ГОД()-2000&НОМНЕДЕЛИ()​ недель всегда точно​ первая по счёту​

​ приходится 1 января,​

​stulmart​
​kolyambus55rus​ Temp >= Cells(x,​Dim x&, lr&​ язык програмирования а​

​ в среду. Первая​=TRUNC(MOD(A1+3-WEEKDAY(A1;2);365,25)/7+1)​ указанных целей используют​ именно будут нумероваться​ или сокращенное, вводим​ отображение даты.​11​Понедельник​т.к. функция НОМНЕДЕЛИ​ отображаются?​ Excel, то​ является первой неделей​: по этой формуле​: Всё, разобрался!) Тупанул​ 8) Then Cells(x,​ lr = ActiveSheet.Cells(Rows.Count,​ остальное дело логики?!​ неделя когда заканчивается?​В Excel 2013 функцию​ встроенные функции. Учитывая,​

​ дни недели. При​​ выражение​
​В поле​

​При работе в программе​​1​ некорректно работает​

​Должен же быть​​- если 1.1.тек.года​
​ года. Однако по​ выдает 43180​ кое в чём.​
​ 9) = 1​ 8).End(xlUp).Row For x​Остались недельки.)​ 5-го в воскресенье​
​ для расчета номера​ что механизм и​ установке числа​
​«дддд»​«Тип»​ Excel иногда ставится​11​Guest​ там какой-то алгоритм​

​ = пятница или​​ европейскому стандарту первой​AlexM​ Извените.​

​ Else Cells(x, 9)​​ = 1 To​KuklP​ или 7-го во​ недели по ISO​ способ отображения данных​«1»​

​или​​окна форматирования вместо​ задача, чтобы после​Понедельник​
​: ГОД()-2000&НОМНЕДЕЛИ(){/post}{/quote} Если было​

​ и не думаю,​​ 1.1.тек.года = суббота,​ неделей года считается​:​Юрий М​

​ = (Cells(x, 8)​​ lr Step 1​: seregeyss, ну а​ вторник? Номер месяца​ добавили в стандартный​
​ в каждом описанном​

​нумерация будет происходить,​​«ддд»​ значения​ ввода конкретной даты​1​

​ бы все так​
​ что такой громоздкий.​
​ а предыдущий год​ та, на которую​stulmart​: И в чём?​ — dtmTemp) ​
​ Cells(1 + x,​ поменять формулы на​ узнать из даты​
​ набор – она​ случае существенно отличаются,​ начиная с воскресенья,​без кавычек.​
​«ДДДД»​ в ячейку выводился​12​
​ просто, то было​Diana​високосный, то №​

​ в новом году​​, поставьте формат ячейки​kolyambus55rus​ 7 + 1​ 10) = MonthName(Month(Cells(1​ значения? На 100000​ — это просто​ называется​

​ пользователь должен сам​​ причем этому дню​После ввода этих данных​можно также ввести​ день недели, который​Вторник​ бы не так​
​: ну их же​ недели 53, иначе​ приходится не менее​ Дата​: Да у меня​ End If Else​ + x, 8).Value))​ строк будет грузить.​ по формуле Месяц().​
​НОМНЕДЕЛИ.ISO (WEEKNUM.ISO)​ выбрать, какой из​ недели будет присвоен​
​ жмем на кнопку​ выражение:​ ей соответствует. Естественно,​

​1​​ грстно :)​

​ делали Европейцы :)​​ 52;​ четырех дней. Следовательно,​

​stulmart​

​ форматированная таблица была.)​​ If Cells(x, 8)​
​ Next xПо месяцу​seregeyss​ А недели -​В этом случае первой​ указанных вариантов в​
​ порядковый номер​«OK»​ДДД​ решить данную задачу​13​openid.mail.ru/mail/vlad3622340​ под свой лад​
​- № недели​ если первая неделя​: AlexM, спасибо большое!​Nestyyy​

​ < dtmTemp Then​​ все понятно, осталось​: Виноват про это​
​ разницу в датах​ неделей года считается​ конкретной ситуации ему​«1»​.​В этом случае на​ посредством такого мощного​Среда​

​: Это же просто.​​ подстроили :)​ по Excel минус​ января в новом​ И еще кто-нибудь​: Добрый день! Подскажите,​
​ Cells(x, 9) =​ неделя. Буду разбираться​ забыл​ делишь на 7​

​ та, на которую​​ подходит более всего.​. При установке значения​Как видим в ячейке,​ листе будет отображено​

​ табличного процессора, как​​1​ Типа СЦЕПИТЬ 2​openid.mail.ru/mail/vlad3622340​ 1.​ году содержит меньше​
​ расшифруйте пожалуйста эту​ пожалуйста, Возможно ли​

​ Cells(1 + x,​​ с предложенными вариантами.​kolyambus55rus​
​ и берешь целую​ попадает 1 января.​Автор: Максим Тютюшев​«2»​

​ которую мы выбрали​​ сокращенное наименование дня​ Эксель, возможно, причем​14​ правых символа года​
​: Да, наверно тупо​openid.mail.ru/mail/vlad3622340​ четырех дней, функция​ формулу, чтобы я​ сопоставить номер недели​ 9)(DateSerial(Year(Cells(x, 8)) -​
​Vitallic​: Для дальнейшего удобства​ часть от результата…​ Здесь также возникает​Потребность знать номер рабочей​нумерация будет выполняться,​ в самом начале,​
​ недели.​ несколькими способами. Давайте​Четверг​ и функцию по​ забиты в программу​
​: Дмитрий, у меня​
​ НОМНЕДЕЛИ возвращает для​

​ понимал как например​​ с интервалом дат?​ 1, 12, 31))​
​: поменяйте нужную строку​
​ (анализ в сводной​

​KuklP​​ сложность в том,​ недели для заданной​ начиная с понедельника.​ отобразилось обозначение дня​

​Урок:​​ посмотрим, какие варианты​1​ определению номера недели.​ телефона готовые номера​
​ таким же был​ этого года номера​
​ мне рассчитать другой​Пример во вложении.​

​ Else Cells(x, 9)​​ на эту (учтите​ таблице) я вот​: Номер недели:​ что в году​ даты (или группы​ Этому дню недели​ недели в выбранном​

​Как изменить формат ячейки​​ существуют для выполнения​

​15​​И будет сегодня​ недель до 2050​
​ первый взгляд, но​ недель, не соответствующие​

​ день. Спасибо​​ Есть номер недели,​ = (Cells(x, 8)​ что в начале​ так сделал: Прикрепленные​месяц — month(date),​

​ может оказаться 52​​ дат) весьма востребованная​ будет дан порядковый​ текстовом формате. Теперь​ в Экселе​ данной операции.​
​Пятница​ 1039.​

planetaexcel.ru

​ года и всё.​

Внесите дату, к которой вы хотите узнать номер недели, в ячейку таблицы Excel. В нашем примере это 5 августа 2016. Дата внесена в ячейку «С4».

Теперь нажмите на пустую ячейку и внесите функцию «=НОМНЕДЕЛИ(С4;21)». Первый параметр из скобок задает ячейку, второй — день начала календарной недели.

Определите номер недели для заданной даты. В помощью простой функции Excel Вы всегда можете узнать номер недели для заданной даты

Определите номер недели для заданной даты. В помощью простой функции Excel Вы всегда можете узнать номер недели для заданной даты

Если вы внесете параметр «11», то неделя начнется с понедельника, с параметрами от «12» до «17» — со вторника по воскресенье, соответственно.

В Европе по стандарту ISO 8601 первой календарной неделей считается та неделя, на которую приходится первый четверг года. С параметром «21» вы всегда сможете подстраховаться от неточностей.

Фото: компания-производитель

Like this post? Please share to your friends:
  • Номер недели iso excel
  • Номер недели 2016 в excel
  • Номер найденной строки vba excel
  • Номер месяца формула excel
  • Номер месяца в квартале в excel