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 |
Нужна дополнительная помощь?
Номер недели по дате функцией НОМНЕДЕЛИ
Потребность знать номер рабочей недели для заданной даты (или группы дат) весьма востребованная вещь в управленческом учете. Понедельные отчеты, еженедельный контроль выполнения плана, недельная сетка вещания в рекламе – все это требует умения определять номер рабочей недели для заданной даты. Задача, на первый взгляд, простая, но (как всегда) есть несколько весьма существенных нюансов.
Во-первых, в разных странах отсчет начала и конца самой недели – различаются. У нас в России днем отсчета недели принят понедельник, а в других странах (например, США и Израиле) – воскресенье.
Во-вторых, вопрос — какую неделю считать первой? На сегодняшний момент существуют как минимум два основных варианта с разной логикой. Рассмотрим их последовательно.
Способ 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)
Способ 2. Неделя с 1-м января и функция НОМНЕДЕЛИ (WEEKNUM)
В этом случае первой неделей года считается та, на которую попадает 1 января. Здесь также возникает сложность в том, что в году может оказаться 52 или 53 недели и, плюс ко всему, 1 января может выпасть на воскресенье, т.е. шесть последних дней года могут оказаться уже в неделе с номером 1, что затрудняет отчетность. Тем не менее, если такой способ нумерации вам нужен, то его можно реализовать функцией НОМНЕДЕЛИ (WEEKNUM), появившейся в Excel начиная с 2007 года. Синтаксис этой функции таков:
=НОМНЕДЕЛИ(Дата; Тип_отсчета)
где
- Дата — ячейка с датой, для которой нужно определить номер недели
- Тип_отсчета — число (1, 2 или 3), обозначающее тип нумерации дней в неделе. Вариант 1 — американский (неделя начинается с воскресенья), вариант 2 — наш.

Ссылки по теме
- Основные принципы работы с датами и временем в Microsoft Excel
- Номер квартала по дате
- Вычисление возраста или стажа в годах, месяцах, днях
- Выпадающий календарь для удобного ввода даты из надстройки PLEX
НОМНЕДЕЛИ (функция НОМНЕДЕЛИ)
Смотрите также: Аргументы, доказательства..??? the year 2000Important The WEEKNUM Вы такое говорите?!
Описание
номер недели некорректно работает использоваться две разныеНо по европейскому первая по счёту не полностью все: Добрый день! системе, можно использовать
номер рабочей недели Формат ячеек, вкладка входит в диапазон,
-
дня начинается неделя.В этой статье описаныAndrew began on Saturday. function considers the Какой день недели
-
МиккиGuest системы. стандарту сегодня 37-я Excel, то детали.(прикр.файл) вот такую формулу: для заданной даты. Число, (все форматы), указанный в таблице
Синтаксис
Значение по умолчанию
синтаксис формулы и: Тема актуальна для
-
Under the ISO week containing January в России самый: А сама дата: ГОД()-2000&НОМНЕДЕЛИ(){/post}{/quote} Если былоСистема 1 Неделя, неделя, т.к. 1- если 1.1.тек.годаНа мобильном телефонеХотел использовать формулу=ОТБР(ОСТАТ(A1+3-ДЕНЬНЕД(A1;2);365,25)/7+1) Задача, на первый нажав выше, возвращается ошибка — 1. использование функции
-
2009 года. standard, weeks always 1 to be отвратительный? — первый известна? бы все так
|
на которую приходится |
янв. 2010г. было |
= пятница или |
|
вроде правильно показывает. |
=номнедели() для сегодняшнего |
=TRUNC(MOD(A1+3-WEEKDAY(A1;2);365,25)/7+1) |
|
взгляд, простая, но |
CTRL+1 |
#ЧИСЛО!. |
|
Тип |
НОМНЕДЕЛИ |
Если же использовать |
|
begin on a |
the first week |
день недели. Понедельник. |
|
Hryak |
просто, то было |
1 января, считается |
|
пятницей и это |
1.1.тек.года = суббота, |
А он как |
|
числа, но что |
В Excel 2013 функцию |
(как всегда) есть |
|
. Для отображения вместо |
Скопируйте образец данных из |
Начало недели |
|
в Microsoft Excel. |
данные 2011 года, |
Monday. In 2000, |
|
of the year. |
|
: Нет только номер |
Замечание
-
бы не так первой неделей года, была не первая, а предыдущий год узнает? то неправильно показывает. для расчета номера несколько весьма существенных даты дня недели, следующей таблицы иСистемаВозвращает номер недели для то формулы выводят
-
the first Thursday However, there is Испании не так? недели. Год берем грстно :)
-
и для нее а 52-я неделя.високосный, то №Просто я обрабатываю В панели управлений
Пример
недели по ISO нюансов. на который она вставьте их в1 или опущен определенной даты. Например, некоректные даты. was Jan-6, so a European standardlapink2000 текущийopenid.mail.ru/mail/vlad3622340 возвращается число 1.
|
Честно говоря, не |
||
|
недели 53, иначе |
||
|
базу дат в |
все на Русском |
добавили в стандартный |
|
Во-первых, в разных странах |
приходится, в поле ячейку A1 новогоВоскресенье неделя, на которуюСкорее всего, дело |
week 1 begins |
|
that defines the |
: Нет, это-то какМихаил С.: Это же просто.Система 2 Неделя, могу найти отличия 52; |
500 000 строк |
support.office.com
День недели в MS EXCEL
стоит, не Америка, набор – она отсчет начала и Тип, предварительно все листа Excel. Чтобы1 приходится 1 января, в стандарте RU: the preceding Monday, first week as раз так, просто: а какие дни Типа СЦЕПИТЬ 2
на которую приходится результатов этих формул- № неделиЗдесь наверно мое метрическая система стоит. называется конца самой недели из него удалив, отобразить результаты формул,2 считается первой неделейGuest or Jan-3. Therefore, the one with стандартов для определения подразумеваются под началом правых символа года первый четверг (!!!-Z) от НОМНЕДЕЛИ(). по Excel минус
быстрое решение ето Вроде все норма.НОМНЕДЕЛИ.ISO (WEEKNUM.ISO) – различаются. У нужно ввести ДДД выделите их и
Понедельник
года, и для: Здравствуйте, что значит
the first two the majority of номера недели как и концом? иномер и функцию по
года, считается первойDiana 1. просто отнимать цифруНе могу разобратьсяВ этом случае первой нас в России
(краткий формат дня нажмите клавишу F2,1 нее возвращается число
ГодН? В Вашей days of 2000, days (four or минимум три по
excel2.ru
Номер недели по дате функцией НОМНЕДЕЛИ
недели в каком определению номера недели. неделей, и для: Прошу прощения, «техзадания»openid.mail.ru/mail/vlad3622340 «1»? Или как в чем проблема? неделей года считается днем отсчета недели недели, например, Сб) а затем —11 1. формуле так написано. Jan-1 and Jan-2, more) falling in Европе и США, варианте (ЕМНИП-их три)?
И будет сегодня нее возвращается число не читала :): Дмитрий, у меня то подругому можноНужна, помощь. Спасибо та, на которую принят понедельник, а или ДДДД (будет клавишу ВВОД. При
ПонедельникДля этой функции могутopenid.mail.ru/mail/vlad3622340 fall into week the new year. а в РоссииHryak
Способ 1. Стандарт ГОСТ ИСО 8601-2001 и функция НОМНЕДЕЛИ.ISO
1039. 1.»В таком случае таким же был настроить неделю? заранее! попадает 1 января. в других странах отражено Суббота). необходимости измените ширину1 использоваться две разные: ГодН — это 52 of 1999. This means that я с бизнесс-неделями: первый день -Nestyyy2 — Кто формула Влада действительно первый взгляд, но
SergeSerge Здесь также возникает (например, США иДругим способом, определения дня столбцов, чтобы видеть12 системы. имя диапазона A1:B365An ISO week for years in никогда дела не
понедельник (по российским
: Добрый день! Подскажите,
в какой стране-государстве, универсально работает. Написала Сергей сразу же: Если идти таким: Здравствуйте. сложность в том, Израиле) – воскресенье.
Способ 2. Неделя с 1-м января и функция НОМНЕДЕЛИ (WEEKNUM)
недели является преобразование все данные.ВторникСистема 1Кирилл number may be which there are имел :-) стандартам), последнй - пожалуйста, Возможно ли какая локаль и другой вариант (но правильно развенчал его путём, то =НОМНЕДЕЛИ(дата;2)-1А Вы справку что в годуВо-вторых, вопрос — какую даты в текстовуюДанные1 Неделя, на которую приходится: За пол часа between 1 and three days orHryak/ воскресенье. сопоставить номер недели
т.п. Недели ведь
он в два
- примером 01.01.2010 - попроще будет? по этой функции может оказаться 52 неделю считать первой?
- форму с определенным09.03.201213 1 января, считается написал такую формулу, 53. Under the less in the: Как говрил Мюнгхаузен,Не понял что
planetaexcel.ru
Номер недели. (формула, проблемка)
с интервалом дат? тоже разные:-)
с половиной раза
нулевая неделя.Serge читали? или 53 недели На сегодняшний момент форматом (см. файлФормулаСреда первой неделей года,
которая будет актуальной ISO standard, week
first week of из любой ситуации
такое ЕМНИППример во вложении.
Z. длиннее, выкладывать неopenid.mail.ru/mail/vlad3622340
: Думаю правильней будет
»Функция НОМНЕДЕЛИ
и, плюс ко существуют как минимум примера):Описание
1 и для нее для любого года 1 will always January, the WEEKNUM есть выход, уМикки Есть номер недели,89623 буду).: Просто у меня определять день неделиОписание всему, 1 января два основных варианта=ТЕКСТ(01/01/10;»дддд»)Результат14 возвращается число 1. и любого Экселя.
have at least function returns week
меня же получился
: У меня так нужно чтобы нижеZ
openid.mail.ru/mail/vlad3622340 перед глазами календарик
и считать ихВозвращает число, которое может выпасть на
с разной логикой.Формула вернет текстовое значение=НОМНЕДЕЛИ(A2)Четверг
Система 2=((C1022-ДАТА(ГОД(C1022);1;1)+1)-(ДЕНЬНЕД(C1022;2))-(8-ДЕНЬНЕД(ДАТА(ГОД(C1022);1;1);2)))/7+1 4 days. If
numbers that are целый лабиринт. :) получилось был прописан интервал: Вариант для Inter_E: Интересно, а как
в Excel на количество с начала указывает, на какую воскресенье, т.е. шесть
Рассмотрим их последовательно. «суббота».Номер недели в году,1 Неделя, на которую приходитсяОтклонения могут быть 1-Jan falls on
incorrect according toЩас буду смотретьHryak/ дат этой недели
(Astana_KZ)- «=НОМНЕДЕЛИ(A2;21)».
даже в простеньких любой вводимый год года. Правда никогда неделю года приходится последних дней года
Первой рабочей неделей годаДля определения дня недели на которую припадает15 первый четверг года,
только тогда, когда
a Friday, Saturday, the European standard.» вариант который мне: Микки спасибо, насколько (1 неделя -
Z.
моб. телефонах номера
с номерами всех этим не заморачивался… указанная дата. могут оказаться уже считается та, на
через числовую форму дата 09.03.2012, еслиПятница
считается первой неделей, неделя начинается с or Sunday, theGuest
больше подходит. я понимаю без 1.01.13 — 06.01.13).
97277 недель всегда точно недель.
SergeВажно. В функции в неделе с которую выпадает первый (понедельник=1; вторник=2, …) неделя начинается в1 и для нее
Воскресенья или Субботы, first few days: В Аксапте используютсяВсем большое спасибо. дополнительной таблицы соответствийPelenalapink2000
отображаются?Я нашёл закономерность: Это я Владу НОМНЕДЕЛИ предполагается, что номером 1, что четверг года (или существует функция ДЕНЬНЕД(), воскресенье (по умолчанию).16
возвращается число 1. но тогда надо of the year
ISO Week numbers:Михаил С. дат номерам недели
: Была похожая тема: На всякий случай,
Должен же быть для № первой писал, в ответ
неделя, на которую
затрудняет отчетность. Тем 4 января, если
английская версия WEEKDAY().10Суббота Эта методика определена изменить индекс в
are defined asUnder the ISO: Ну и мой никак не получится?Hugo велосипед уже изобретен там какой-то алгоритм
недели, слепил по на приходится 1 января, не менее, если
хотите). Здесь логикаЕсли дата находится в=НОМНЕДЕЛИ(A2;2)
1 в стандарте ISO функции ДеньНед. being in the standard, a week вариантМикки: У меня кстати
— важно выбрать и не думаю, ней формулу и=ЕСЛИ(ДЕНЬНЕД(ДАТА(ГОД(A2);1;1);2) :) является первой неделей такой способ нумерации
проста. Первая неделя ячейкеНомер недели в году,17
8601, который широкоpioneer1090 last (52nd or always begins onvikttur
: У меня не НОМНЕДЕЛИ() не работает… нужную модель :) что такой громоздкий. для очистки совестиSerge
года. Однако по вам нужен, то
– это та,А1 на которую припадает
Воскресенье используется в Европе: добрый день, 53rd) week of
a Monday, and: Стандартов ЕМНИП не получилось …И кстати -Diana
Diana протестировал её всеми: Не, это я европейскому стандарту первой его можно реализовать на которую пришлось
, то формула =ДЕНЬНЕД(A1;2) дата 09.03.2012, если1 для нумерации недель.в файле есть the previous year. ends on a
знаю. ЕКЛМН -ve-nick эти номера недель: Ну вот, скачала: ну их же
годами с 2009
фигнню каку-то написал,
неделей года считается функцией НОМНЕДЕЛИ (WEEKNUM), больше трех дней
вернет день недели.
неделя начинается в
21НОМНЕДЕЛИ(дата_в_числовом_формате;[тип]) есть ячейка, котораяUnlike absolute week Sunday. The first
наверное, не то: Получилось так… тоже бывает по и приложила :) делали Европейцы :)
по 2040 - это совсем не
та, на которую появившейся в Excel
(больше половины недели) Номер 1 соответствует понедельник (второй аргумент,ПонедельникАргументы функции НОМНЕДЕЛИ описаны определяет номер недели numbers, not every week of a
:)на другие года
разному считаются. (вдруг кому лень) под свой лад
всё правильно считает. продуктивно…
в новом году начиная с 2007 из наступившего года. понедельнику. т. е. 2).2
ниже. (финансовый год), но year will have year is thatНа форуме было не проверял, но
_Boroda_ (92 КБ).
planetaexcel.ru
Возможно ли сопоставить номер недели с интервалом дат? (Формулы)
подстроили :)Синтаксис попытался описатьopenid.mail.ru/mail/vlad3622340 приходится не менее года. Синтаксис этой
Некоторое неудобство вДля того, чтобы вывести11В приложении Excel датыДата_в_числовом_формате на данный момент a week 53.
week which contains обсуждение этого вопроса.
текущий вроде работает…: как-то такВсе говорим спасибо
openid.mail.ru/mail/vlad3622340 в сообщении в: Вот такой монстр четырех дней. Следовательно,
функции таков: том, что в
день недели наОпределим день недели для
хранятся в виде Обязательный. Дата, по
она считает первым For example, the the first Thursday Если память непо идее можноjakim
excelworld.ru
Узнать даты начала и конца недели по номеру недели
KL и сайту: Да, наверно тупо 10:43.
получился. Зато универсально если первая неделя=НОМНЕДЕЛИ(Дата; Тип_отсчета) году получается когда английском языке используйте
заданной даты в последовательных чисел, что которой определяется неделя.
днем недели ПОНЕДЕЛЬНИК, year 2000 does of the year, изменяет, то говорилось,
и его в: Может так?Тему, думаю, можно забиты в программуНаверняка можно короче, для любой даты
января в новомгде 52, а когда формулу =ТЕКСТ(A6;»[$-809]ДДД») ячейке. Существует несколько
позволяет использовать их Даты должны вводиться
а мне надо, not have a or, equivalently, contains
что при начале формулу запихнуть, ноjakim закрывать. телефона готовые номера но это -
любого года: году содержит меньшеДата
53 рабочих недели.Другие статьи на эту
решений в зависимости в вычислениях. По с использованием функции
чтобы первый день week 53. Week Jan-4. года в день тогда она станет
: Можно и так.alexandr437 недель до 2050 к формулистам.=ЕСЛИ(ДЕНЬНЕД(ДАТА(ГОД(A2);1;1);2) См. пример
четырех дней, функция
- ячейка с
Плюс ко всему
тему можно найти
от того результата,
умолчанию дате 1
ДАТА или как недели был воскресенье, 52 begins onWhile this provides не ниже четверга менее гибкойLans: предлагаю продолжить тему: года и всё.
kimopenid.mail.ru/mail/vlad3622340 НОМНЕДЕЛИ возвращает для датой, для которой 1 января может в разделе Неделя, День который мы хотим января 1900 г. соответствует результат вычисления другихесть идеи, как Monday, 25-Dec, and
some standardization, it неделя не считаетсяlapink2000: Выкладываю свое решение. как сделать такПросто и без
: =СУММПРОИЗВ(—(ДЕНЬНЕД(СТРОКА(ИНДЕКС(A:A;ДАТА(ГОД(A1);1;1)):ИНДЕКС(A:A;A1));2)=7))+(ДЕНЬНЕД(A1;2)<>7): Извиняюсь, пропустил одно этого года номера
нужно определить номер
запросто оказаться 52 недели. получить: номер дня
число 1, а формул и функций. это можно сделать? ends on Sunday, can lead to
(нулевая).: Плохо представляю себе, Решил, что лучше чтобы и год извратов:)Diana условие. Вот теперь недель, не соответствующие недели
неделей предыдущего года.Потребность знать номер рабочей недели (1 -
1 января 2008 Например, для указания
заранее спасибо, 31-Dec. But the
unexpected results —=НОМНЕДЕЛИ() начала 2010 какой стандарт в
сделать определение начала
для недели определялся?Diana: Это я тоже точная формула (монстр европейскому стандарту.»Тип_отсчетаНо именно этот вариант недели для заданной Пн, 2- Вт, г. — число 39 448, даты 23 маяArkaIIIa year 2004 does namely that the года (Пт) показывает России, но может недели в одной например 1015, т.е.: Интересно, что-то ZVI не пропущу :) подрос :-)openid.mail.ru/mail/vlad3622340- число (1, официально принят в даты (или группы …), текстовую форму
поскольку интервал между 2008 г. следует: В Вашей формуле:
have a week first few days единицу. так: ячейке. 2010 год, 15 не отвечает.=ОКРУГЛ((A1-ДАТА(ГОД(A1-ДЕНЬНЕД(A1-1)+4);1;3)+ДЕНЬНЕД(ДАТА(ГОД(A1-ДЕНЬНЕД(A1-1)+4);1;3))+5)/7;0)=ЕСЛИ(ДЕНЬНЕД(ДАТА(ГОД(A2);1;1);2): Добрый день всем! 2 или 3), России с 2002 дат) весьма востребованная
(Понедельник, Вторник, …) датами составляет 39 448 воспользоваться выражением ДАТА(2008;5;23).=ЕСЛИ(ТДАТА()21);НОМНЕДЕЛИ(A2-ДАТА(ГОД(A2);5;31); 53, from Monday, of a yearГде правда? Листайте=ДАТА(Номер_Года;1;1)+7*(Номер_Недели-2)+(8-ДЕНЬНЕД(ДАТА(Номер_Года;1;1);2))Hryak/ неделя.Он обычно всегдаopenid.mail.ru/mail/vlad3622340Смысл:Пример во вложении. обозначающее тип нумерации года как государственный вещь в управленческом или просто можно дней. Если даты вводятся21 27-Dec , through may not be стандарты :)=ДАТА(Номер_Года;1;1)+7*(Номер_Недели-1)+(7-ДЕНЬНЕД(ДАТА(Номер_Года;1;1);2)): Уважаемые знатоки, помогитеvikttur находит решения не: Добрый день!- если 1.1.тек.года
Serge дней в неделе. и остается им учете. Понедельные отчеты, изменить формат ячейки.Если значение «дата_в_числовом_формате» находится как текст, это)) Friday, 31-Dec. in week 1Михаил С.или так: плиз.: ГОД()-2000&НОМНЕДЕЛИ() в стандартных ситуацияхИзвиняюсь, но по < пятницы, то: Vlad, 01.012010, это
Вариант 1 - на данный момент еженедельный контроль выполненияДень недели можно быстро вне диапазона для может привести квыделенные красным значенияФедор at all. Instead,: ЕМНИП = (Если_Мне_Не_Изменяет_Память).=МАКС(ДАТА(Номер_Года;1;1);ДАТА(Номер_Года;1;1)+7*(Номер_Недели-2)+(8-ДЕНЬНЕД(ДАТА(Номер_Года;1;1);2)))Как с помошьюGuest :) вышеприведённым формулам уважаемых № недели считает какая неделя?
американский (неделя начинается (см. ГОСТ ИСО плана, недельная сетка отобразить с помощью
текущего базового значения возникновению проблем.
заменить на 1: ни одна из they will be
На счет стандартов:=ДАТА(Номер_Года;1;1)+7*(Номер_Недели-1)+(7-ДЕНЬНЕД(ДАТА(Номер_Года;1;1);2)) формул узнать даты: думаю что не
Z kim и Diana
Excel, в противномInter_E с воскресенья), вариант 8601-2001). Чтобы посчитать
вещания в рекламе Пользовательского формата. Пользовательский даты, возвращается ошибка
Тип или на 17, приведенных формул не in week 52 в справке такНужно тестировать
начала и конца
получится использовать ГОД()-2000&НОМНЕДЕЛИ(): 1 — «*Для Tailor получается, что случае:: ..ответ 2 — наш. номер недели по
planetaexcel.ru
ВЫЧИСЛЕНИЕ НОМЕРА НЕДЕЛИ (Формулы/Formulas)
– все это формат можно ввести
#ЧИСЛО!. Необязательный. Число, которое т.е.: верна. of the preceding написанно:Юрий М недели, если естьт.к. функция НОМНЕДЕЛИ этой функции могут
сегодня 38-я неделя.- если неделя
конечно читал, но
Inter_E дате по такой
требует умения определять через диалоговое окноЕсли значение «тип» не
определяет, с какого200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИ(ТДАТА()Владимир year! For example,
"Remarks
excelworld.ru
: Кирилл, да что
Существует 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)
Следствием того, что все недели начинаются с понедельника, может получиться так, что в первую неделю попадут дни из прошлого года.
Решение обратной задачи – когда известен номер недели, а нужно найти, например, дату последнего дня этой недели – приведено в статье
Последний день недели
.
Внесите дату, к которой вы хотите узнать номер недели, в ячейку таблицы Excel. В нашем примере это 5 августа 2016. Дата внесена в ячейку «С4».
Теперь нажмите на пустую ячейку и внесите функцию «=НОМНЕДЕЛИ(С4;21)». Первый параметр из скобок задает ячейку, второй — день начала календарной недели.
Если вы внесете параметр «11», то неделя начнется с понедельника, с параметрами от «12» до «17» — со вторника по воскресенье, соответственно.
В Европе по стандарту ISO 8601 первой календарной неделей считается та неделя, на которую приходится первый четверг года. С параметром «21» вы всегда сможете подстраховаться от неточностей.
Фото: компания-производитель
На чтение 29 мин. Просмотров 40.7k.
Содержание
- Получить день
- Получить день недели
- Получить месяц
- Получить год с даты
- Извлечение даты с даты и времени
- Извлечение времени с даты и времени
- Получить возраст от дня рождения
- Получайте дни, часы и минуты между датами
- Получить финансовый квартал с даты
- Получить процент завершения года
- Получить квартал от даты
- Получить ту же дату в следующем месяце
- Получить ту же дату в следующем году
- Получить дату начала в соответствии с установленной датой
- Получить номер недели с даты
Получить день
Получить дату с номера дня
= ДАТА(год; 1; день)
Чтобы получить реальную дату из числа дня или «n-го числа года», вы можете использовать функцию ДАТА.
В показанном примере формула в C5:
= ДАТА(2015;1; B5)
Функция построения даты берется из отдельных значений года, месяца и дня. Один из его трюков — это способность выполнять сверку с целью исправления дат, когда дни и месяцы находятся вне диапазона.
Например, ДАТА возвращает 9 апреля 2016 года со следующими аргументами:
= ДАТА(2016;1;100)
В январе нет 100-го дня, поэтому ДАТА просто продвигается на 100 дней вперед с 1 января, а цифры возвращают правильную дату.
Формула на этой странице использует эту механику. В этом случае предполагается, что в этом году 2015 год, поэтому 2015 год жестко закодирован в течение года, а 1 используется в течение месяца. Значение дня выводится из столбца B, а функция ДАТА рассчитывает дату, как объяснено выше.
Если у вас есть дата в формате Юлиан, например 10015, где используется формат «дддгг», вы можете изменить формулу следующим образом:
= ДАТА(ПРАВСИМВ(A1;2); 1; ЛЕВСИМВ(A1;3))
Здесь мы используем ПРАВСИМВ, чтобы извлечь 2 символа справа за год, и ЛЕВСИМВ, чтобы извлечь 3 символа слева в течение дня. Месяц представлен как 1, как в первом примере.
Получить день с даты
= ДЕНЬ(дата)
Если вам необходимо извлечь день из даты, вы можете использовать функцию ДЕНЬ. В общей форме приведенной выше формула дата должна быть в форме, которую Excel распознает как действительную дату.
Функция ДЕНЬ принимает только один аргумент — дату, из которой вы хотите извлечь день. В этом примере формула:
= ДЕНЬ (B3)
B4 содержит значение даты для 5 января 2016 года. Функция ДЕНЬ возвращает число 5, представляющее компонент дня даты.
Обратите внимание: вы можете использовать ДЕНЬ для извлечения дня из дня, введенного как текст:
= ДЕНЬ(«1/5/2016»)
Но это может привести к непредсказуемым результатам на компьютерах, использующих разные региональные настройки даты. В общем, лучше (и более гибко) указать адрес ячейки, в которой уже есть действительное значение даты в качестве аргумента для ДЕНЬ.
Получить имя дня с даты
ТЕКСТ (B4; «дддд»)
Если вам необходимо получить имя дня (например, понедельник, вторник и т. д.) С даты, есть несколько вариантов в зависимости от ваших потребностей.
Если вы хотите отображать имя дня, вам не нужна формула — вы можете использовать формат персонализированного номера. Выберите дату, затем перейдите к Форматирование ячеек (Ctrl + 1 или Cmd + 1)> Custom и введите один из этих настраиваемых форматов:
«ддд» // «сред»
«дддд» // «среда»
Excel отобразит только имя дня, но оно оставит неизменным значение даты.
Если вы хотите преобразовать значение даты в текстовое значение, вы можете использовать функцию ТЕКСТ с настраиваемым числовым форматом, например, «ддд». Формула выглядит так:
= ТЕКСТ (B4; «ддд»)
Функция ТЕКСТ преобразует значения в текст с использованием формата чисел, который вы предоставляете. Обратите внимание, что в преобразовании теряется дата, остается только текст названия дня.
Если вы не хотите использовать вспомогательную таблицу, вы также можете отобразить номер дня недели в название месяца непосредственно в функции ВЫБОР следующим образом:
= ВЫБОР (ДЕНЬНЕД(B4); «Вс»; «Пн»; «Вт»; «Ср»; «Чт»; «Пт»; «Сб»)
В этом случае введите имена дней недели, которые вы хотите вернуть (сокращенно или нет), в качестве значений в ВЫБОР после первого аргумента. ДЕНЬНЕД будет извлекать номер буднего дня, и ВЫБОР будет использовать это число для возврата n-го значения в списке. Это работает, потому что ДЕНЬНЕД возвращает число 1-7, соответствующее заданному дню недели. С настройками по умолчанию, воскресенье = 1 и суббота = 7. Смотрите ДЕНЬНЕД для получения дополнительной информации.
ВЫБОР — это больше работы по настройке, но она также более гибкая, так как позволяет привязать дату к любым требуемым значениям (т. е. Вы можете использовать значения, которые являются пользовательскими, сокращенными, не сокращенными, разными языками и т. д.).
Получить дни до даты
= дата-СЕГОДНЯ ()
Чтобы вычислить дни до определенной даты, вы можете использовать вычитание и функцию СЕГОДНЯ. В обобщенной версии вышеприведенной формулы дата — это более поздняя дата — день, на который вы рассчитываете, — а функция СЕГОДНЯ используется для создания текущей даты.
В примере D5 содержит эту формулу:
= B4-СЕГОДНЯ()
В Excel даты — это просто серийные номера. В стандартной системе дат для окон, основанной на 1900 году, где 1 января 1900 года является номером 1. Даты действительны до 9999, что является серийным номером 2 958 465. Это означает, что 1 января 2050 года серийный номер 54789.
В примере датой является 9 марта 2016 года, который является серийным номером 42 438. Так:
= B4-СЕГОДНЯ()
= 1 января 2050 — 27 апреля 2014 г.
= 54;789 — 42;438
= 12;351
Это означает, что до 1 января 2050 года, когда отсчитывается с 9 марта 2016 года, существует 13 033 дня.
Примечание: вам не нужно использовать функцию СЕГОДНЯ. Во втором примере формула в D6:
= B6-C6
В третьем примере одна и та же базовая формула используется вместе с оператором конкатенации (&) для встраивания вычисленных дней в простое текстовое сообщение:
= «Осталось всего» & B6-C6 & «дней!»
Поскольку между 10 декабря 2014 года и 25 декабря 2014 года существует 15 дней, результатом является следующее сообщение:
Осталось всего 15 дней!
Получить дни между датами
= Поздняя дата-Ранняя дата
Если вы хотите вычислить количество дней между двумя датами, вы можете просто вычесть старшую дату из более новой даты. Результатом будет целое число, представляющее дни между датами.
В примере формула в ячейке D6 возвращает 365, поскольку между 1/1/1999 и 1/1/2000 есть 365 дней.
Даты в Excel — это просто серийные номера, которые начинаются 1 января 1900 года.
В примере формула в ячейке D6 просто вычитает числовое значение 1/1/1999 (36161) из числового значения 1/1/2000 (36526), чтобы получить результат 365. Шаги выглядят так:
= C5-B5
= 1/1 / 1999-1 / 1/2000
= 36161-36526
= 365
Если вам необходимо вычислить количество дней между более ранней датой и сегодняшним днем, используйте:
= СЕГОДНЯ() – ранняя дата
Если вам необходимо вычислить количество дней между более поздней датой и сегодняшним днем, используйте:
= Поздняя дата-СЕГОДНЯ()
Обратите внимание, что СЕГОДНЯ будет пересчитываться на постоянной основе. Если вы откроете книгу позднее, значение, используемое для СЕГОДНЯ, обновится, и вы получите новый результат.
Функция ДНИ, введенная в Excel 2013, также вычисляет дни между двумя датами.
Получайте дни между датами, игнорируя годы
= РАЗНДАТ (нач_дата; кон_дата; «гд»)
Для вычисления дней между двумя датами, игнорируя значения года, используйте функцию РАЗНДАТ. В показанном примере формула в D5:
= РАЗНДАТ(B5; C5; «yd»)
Функция РАЗНДАТ может обрабатывать различные расчеты «разницы дат» для вычисления разницы между двумя датами в годах, месяцах и днях. РАЗНДАТ принимает 3 аргумента: начальную дату, конечную дату и единицу измерения, которая контролирует, какой результат будет возвращен.
В этом случае мы хотим, чтобы дни игнорировались годами, поэтому мы поставляем «yd» для единицы.
После настройки функция полностью автоматическая и возвращает результат в запрошенном модуле.
Получить первый день месяца
= Дата-ДЕНЬ(дата) +1
Чтобы получить первый день месяца для определенной даты, вы можете использовать простую формулу, основанную на функции ДЕНЬ.
В показанном примере формула в ячейке B5:
= B5-ДЕНЬ(B5) +1
Функция ДЕНЬ возвращает значение дня для даты. В примере показано, что значение дня для даты в B5 (5 июня 2016 года) равно 5. Поскольку даты — это только порядковые номера в Excel, мы можем вычесть 5, а затем добавить 1, чтобы получить значение даты на 1 июня 2016 года.
Получить первый день предыдущего месяца
= КОНМЕСЯЦА(дата; -2) +1
Чтобы получить первый день предыдущего месяца для данной даты, вы можете использовать простую формулу, основанную на функции КОНМЕСЯЦА.
В показанном примере формула в ячейке B5:
= КОНМЕСЯЦА(B5; -2) +1
Функция КОНМЕСЯЦА возвращает последний день месяца, основанный на заданной дате. Второй аргумент — это месяцы, в которых указывается, сколько месяцев в будущем или в прошлом нужно переместить перед возвратом последнего дня. Возвращаясь на 2 месяца, затем добавляя один день, мы можем рассчитать первый день предыдущего месяца с любой заданной даты.
В показанном примере месяцев указываются как -2, что заставляет КОНМЕСЯЦА возвращаться 4/30/2015. Затем добавляется 1 день для получения 5/1/2015.
Получить последний день месяца
= КОНМЕСЯЦА(дата; 0)
Самый простой способ подсчитать последний день месяца — использовать функцию КОНМЕСЯЦА, которая предназначена для этой цели.
В показанном примере формула в ячейке B5:
= КОНМЕСЯЦА(B5;0)
Второй аргумент (месяцы) функции КОНМЕСЯЦА позволяет вам получить последний день месяца в будущем или в прошлом месяце. Когда вы используете ноль в течение месяцев, КОНМЕСЯЦА вернет последний день месяца в том же месяце.
Чтобы получить последний день предыдущего месяца, используйте:
= КОНМЕСЯЦА(дата; -1)
Чтобы получить последний день следующего месяца, используйте:
= КОНМЕСЯЦА(дата; 1)
Если вы предпочитаете создавать умные формулы, которые озадачивают других, вы также можете использовать функцию ДАТА, чтобы получить последний день месяца:
= ДАТА(ГОД (дата); МЕСЯЦ(дата) +1;0)
Трюк с этой формулой дает ноль в течение дня. Когда вы указываете нуль в качестве аргумента дня для ДАТА, функция даты откатывается один день в предыдущий месяц до последнего дня этого месяца. Таким образом, добавляя 1 к месяцу и используя ноль в день, ДАТА возвращается к последнему дню «оригинального» месяца.
Получить последний рабочий день в месяц
=РАБДЕНЬ (КОНМЕСЯЦА(дата) + 1; -1)
Чтобы получить последний рабочий день в месяце, вы можете использовать функцию РАБДЕНЬ вместе с функцией КОНМЕСЯЦА.
В примере формула в C5:
= РАБДЕНЬ (КОНМЕСЯЦА (B5;0) + 1; -1)
Работая изнутри, функция КОНМЕСЯЦА получает последний день месяца любой даты. К этому результату мы добавляем 1, что приводит к первому дню следующего месяца.
Эта дата переходит в функцию РАБДЕНЬ как «дата начала», а также -1 для «дней». Функция РАБДЕНЬ автоматически отступает на 1 день, принимая во внимание любые выходные. В результате будет последний рабочий день месяца.
Чтобы получить последний рабочий день месяца, принимая во внимание праздники, просто добавьте диапазон, содержащий даты отпуска, в формулу, подобную этой:
= РАБДЕНЬ(КОНМЕСЯЦА(B5;0) + 1; -1; праздничные дни)
Функция РАБДЕНЬ предполагает, что выходные — это суббота и воскресенье. Если вам необходимо настроить выходные дни, вы можете использовать функцию РАБДЕНЬ.МЕЖД.
Получить n-ый день года
= Дата-ДАТА (ГОД (дата); 1;0)
Если вы хотите получить день года с даты (например, n-го числа года), вы можете использовать формулу, которая использует функции ДАТА и ГОД вместе.
Например, с датой «1 июня 2016 года» в ячейке B4 следующая формула вернет 153:
= B4-ДАТА(ГОД (B4); 1;0)
То есть 1 июня 2016 года — 153-й день этого года.
Эта формула использует тот факт, что даты — это просто порядковые номера в Excel. Он определяет последний день предыдущего года и вычитает его, начиная с исходной даты B4. Результат — n-й день года.
Обратите внимание, что аргумент день в ДАТА предоставляется как ноль. Хорошей особенностью функции ДАТА является то, что она может обрабатывать значения ДЕНЬ, которые находятся «вне диапазона», и соответствующим образом корректировать результат. Когда мы даем ДАТА год, 1 месяц и 0 дней, функция ДАТА возвращает последний день предыдущего года.
Чтобы настроить формулу для возврата n-го дня года для текущей даты, просто используйте функцию СЕГОДНЯ для даты:
= СЕГОДНЯ () — ДАТА (ГОД (СЕГОДНЯ ()); 1;0)
Получить день недели
Получить последний день недели
= Дата-ОСТАТ(дата-день; 7)
Если вы хотите найти самую последнюю среду, субботу или понедельник, указав определенную дату начала, вы можете использовать формулу, которая использует функцию ОСТАТ.
Формулы, в которых используется понятие «день недели», основаны на идее, что каждый день недели имеет определенное число. По умолчанию Excel назначает 1 на воскресенье и 7 на субботу.
В примере формула B6 является датой 1/16/2015, а формула в C6:
= B6-ОСТАТ(B6-7;7)
Число 7 (числовой аргумент в функции ОСТАТ) представляет день недели (день), который вы хотите. Только помните, что 1 — это воскресенье, а 7 — суббота. Так принято в США.
Чтобы решить эту формулу, Excel сначала вычитает день (7 в данном случае) из даты, а затем передает результат в функцию ОСТАТ в качестве числа. ОСТАТ возвращает остаток от деления этого числа на 7, которое затем вычитается из даты.
= B6-ОСТАТ(B6-7;7)
= B6-ОСТАТ(42013;7)
= B6-6
= 42014
= 1/10 / 2015
Если вы хотите получить последний день недели с текущей даты, вы можете использовать функцию СЕГОДНЯ следующим образом:
= СЕГОДНЯ () — ОСТАТ(СЕГОДНЯ () — день; 7)
Примечание. Если дата имеет тот же день недели, дата будет возвращена.
Получить следующий день недели
= Дата + 7-ДЕНЬНЕД(дата + 7-день)
Если вы хотите найти следующий конкретный день недели (т.е. следующую среду, пятницу или понедельник) с определенной датой начала, вы можете использовать общую формулу, которая использует функцию ДЕНЬНЕД с чем-то, называемым «день недели» (день). С помощью этой формулы вы можете делать такие вещи:
- Получить следующую пятницу
- Получить следующую субботу
- Получить следующий вторник
Формулы, в которых используется понятие «день недели», основаны на идее, что каждый день недели имеет определенное число. По умолчанию Excel назначает 1 на воскресенье и 7 на субботу. Таким образом, функция ДЕНЬНЕД при заданной дате возвращает число от 1 до 7. В двух словах эта формула сначала переводит дату вперед на 7 дней, а затем возвращается к правильной дате, вычитая результат вычисления, который использует функцию ДЕНЬНЕД.
В примере формула B6 является датой 1/16/2015, а формула в C6:
= B6 + 7-ДЕНЬНЕД(B6 + 7-2)
Число 2 представляет день недели (день), который вы хотите, в данном случае, понедельник.
Чтобы решить эту формулу, Excel сначала добавляет 7 к начальной дате в C6, а затем уменьшает B6 + 7-2 до 42025 (порядковый номер в системе даты Excel, который представляет 1/21/2015). Затем Excel вычисляет день недели для этой даты (4) и вычитает, что из исходной даты начала + 7 (42027 = 1/23/2015), чтобы получить окончательное значение даты 42013 = 1/9/2015
= B6 + 7-ДЕНЬНЕД(B6 + 7-2)
= 42027-ДЕНЬНЕД(42025)
= 42027-4
= 42023
= 1/9/2015
Если вы хотите получить следующий день недели с текущей даты, вы можете использовать функцию СЕГОДНЯ, например:
= СЕГОДНЯ () + 7-НЕДЕЛЯ (СЕГОДНЯ () + 7-день)
Примечание. Если указанная дата совпадает с днем недели, которую вы хотите восстановить, будет возвращена одна и та же дата.
Получить n-й день недели в месяце
= Дата-ДЕНЬ(дата) + 1 + n * 7-ДЕНЬНЕД(дата-ДЕНЬ (дата) + 8-день)
Чтобы получить n-й день недели в месяце (т. е. первый вторник, третий вторник, четвертый четверг и т. д.), вы можете использовать формулу, основанную на функциях ДЕНЬ и НЕДЕЛЯ.
В показанном примере формула в E5:
= B5-ДЕНЬ(B5) + 1 + D5 * 7-ДЕНЬНЕД(B5-ДЕНЬ(B5) + 8-C5)
Во-первых, эта формула определяет «дату начала». «Первое число месяца» рассчитывается с помощью функции ДЕНЬ:
= B5-ДЕНЬ(B5) +1
Затем n * 7 дней до первого числа месяца, чтобы получить дату начала n недель с первого числа месяца. В общей форме формулы n представляет «n-ое».
Следующий шаг — рассчитать корректировку, необходимую для достижения конечного результата. Корректировка рассчитывается с использованием ДЕНЬНЕД и ДЕНЬ:
ДЕНЬНЕД(B5-ДЕНЬ(B5) + 8-C5)
В ДЕНЬНЕД снова вычисляется первое число месяца, затем добавляются 8 дней и вычитается значение для день (день недели).
День недели сокращенно «день» в общей форме формулы. Это число от 1 (воскресенье) до 7 (суббота), которое может быть изменено по мере необходимости.
Наконец, вычисленная корректировка вычитается из исходной даты начала, чтобы получить окончательный результат.
Получить последний день недели за месяц
= КОНМЕСЯЦА(дата; 0) + 1-ДЕНЬНЕД (КОНМЕСЯЦА(дата; 0) + 1-день)
Чтобы получить последний день недели за месяц (то есть в прошлую субботу, последнюю пятницу, последний понедельник и т. Д.), Вы можете использовать формулу, основанную на функциях КОНМЕСЯЦА и ДЕНЬНЕД.
В показанном примере формула в D5:
= КОНМЕСЯЦА(B5;0) + 1-ДЕНЬНЕД(КОНМЕСЯЦА(B5;0) + 1-C5)
Во-первых, эта формула определяет первый день следующего месяца * после * данной даты. Он делает это, используя КОНМЕСЯЦА, чтобы получить последний день месяца, а затем добавить один день:
= КОНМЕСЯЦА(B5;0) +1
Затем формула вычисляет количество дней, требуемых для «возврата назад» к последнему запрошенному буднему дню в предшествующем месяце (т. е. Месяце исходной даты):
ДЕНЬНЕД(КОНМЕСЯЦА(B5;0) + 1-C5)
В ДЕНЬНЕД КОНМЕСЯЦА снова используется для получения первого дня следующего месяца. С этой даты вычитается значение для дня недели, и результат вводится в ДЕНЬНЕД, который возвращает количество дней для отката.
И наконец, дни отката вычитаются из первого числа следующего месяца, что дает окончательный результат.
В общем виде формулы вверху страницы день недели сокращенно «день». Это число от 1 (воскресенье) до 7 (суббота), которое можно изменить, чтобы получить другой день недели. Например, чтобы получить последний четверг месяца, установите значение день равным 5.
Получить первый понедельник до любой даты
= Дата-ДЕНЬНЕД (дата-2)
Если вам нужно найти понедельник непосредственно перед любой датой, вы можете использовать общую формулу, которая использует функцию ДЕНЬНЕД.
Если вы предполагаете, что у вас есть случайная дата и хотите оглянуться назад во времени, чтобы найти ближайший предыдущий понедельник, вы можете увидеть, что вам нужно будет «отбросить» определенное количество дней в зависимости от дня недели (например, понедельник, вторник, и т. д.) даты. Если дата является понедельником, вам нужно будет вернуться на 7 дней, если дата является вторником, вам нужно вернуться на 1 день и так далее. Ниже приведены корректировки, необходимые для каждого дня недели.
Понедельник 7
Вторник 1
Среда 2
Четверг 3
Пятница 4
Суббота 5
Воскресенье 6
Чтобы рассчитать эту корректировку динамически для любой даты, вы можете использовать тот факт, что понедельник — это второй день недели в схеме по умолчанию Excel. Просто вычислите день недели даты на 2 дня раньше и используйте этот результат для значения корректировки. Итак, при допущении даты 4 июня 2015 года (четверг) в ячейке A1 формула решается следующим образом:
= A1-ДЕНЬНЕД (A1-2)
= 4;2015 июня — ДЕНЬНЕД (4 июня015-2)
= 4;2015 июня — ДЕНЬНЕД(2 июня 2015 г.)
= 4 июня015-3
= Июнь 1;2015
Если вы считаете, что настройка дня недели запутанна и не интуитивна, вы используете альтернативную формулу, которая использует функцию ВЫБОР с жестко заданными значениями регулировки:
= A1-ВЫБОР(ДЕНЬНЕД(A1;2); 7;1;2;3;4;5;6)
В этой версии используется ДЕНЬНЕД, чтобы получить индекс для дня недели (с понедельника как 1), а затем ВЫБОР возвращает правильное количество дней для возврата.
Если вам нужно найти понедельник до сегодняшнего дня, просто используйте функцию СЕГОДНЯ на дату:
= СЕГОДНЯ () — ДЕНЬНЕД(СЕГОДНЯ () — 2)
Получить месяц
Получить месяц с даты
= МЕСЯЦ (дата)
Если вам необходимо извлечь месяц из даты, вы можете использовать функцию МЕСЯЦ. В общей форме приведенной выше формулы дата должна быть в форме, которую Excel распознает как действительную дату.
Функция МЕСЯЦ принимает только один аргумент — дату, из которой вы хотите извлечь месяц. В этом примере формула:
= МЕСЯЦ (B3)
B4 содержит значение даты на 5 января 2016 года. Функция МЕСЯЦ возвращает число 1, соответствующее месяцу (январю) даты.
Обратите внимание, что вы можете использовать МЕСЯЦ для извлечения месяца со дня, введенного как текст:
= МЕСЯЦ(«1/5/2016»)
Однако использование текста для дат может приводить к непредсказуемым результатам на компьютерах с использованием разных региональных настроек даты. В общем, лучше (и более гибко) указать адрес ячейки, которая уже содержит действительную дату.
Получить название месяца с даты
= ТЕКСТ (дата; «мммм»)
Если вам необходимо получить название месяца (например, январь, февраль, март и т. д.) с даты, у вас есть несколько вариантов в зависимости от ваших потребностей.
Если вы хотите отображать название месяца, вам не нужна формула — вы можете использовать формат персонализированного номера. Выберите дату и перейдите к Форматирование ячеек (Ctrl + 1 или Cmd +1), затем выберите Custom и введите один из этих настраиваемых форматов:
«Ммм» // «Янв»
«Мммм» // «Январь»
Excel отобразит только название месяца, но оно оставит неизменным значение даты.
Если вы хотите преобразовать значение даты в текстовое значение, вы можете использовать функцию ТЕКСТ с настраиваемым числовым форматом, например «ммм».
= ТЕКСТ (B4; «мммм»)
Функция ТЕКСТ преобразует значения в текст с использованием формата чисел, который вы предоставляете. Обратите внимание, что дата теряется при преобразовании: остается только текст для названия месяца.
Если вы хотите максимальной гибкости, вы можете «сопоставить» название месяца с именем месяца непосредственно в функции ВЫБОР следующим образом:
= ВЫБОР (МЕСЯЦ (B4); «Янв»; «Фев»; «Мар»; «Апр»; «Май»; «Июн»; «Июл»; «Авг»; «Сен»; «Окт»; «Ноя» «;» Дек»)
Введите названия месяца, которые хотите вернуть (сокращенно или нет), в качестве значений в ВЫБОР после первого аргумента, который вводится как МЕСЯЦ (дата). МЕСЯЦ выведет номер месяца, и ВЫБОР будет использовать это число для возврата n-го значения в списке. Это работает, потому что МЕСЯЦ возвращает число 1-12, соответствующее имени месяца.
ВЫБОР — это больше работы по настройке, но она также более гибкая, так как позволяет сопоставлять дату с любыми требуемыми значениями (т. е. Вы можете использовать значения, которые являются обычаями, аббревиатурами, аббревиатурами на другом языке и т. д. ).
Получать месяцы между датами
= РАЗНДАТ (нач_дата; кон_дата; «м»)
Чтобы рассчитать месяцы между двумя датами как целые числа, вы можете использовать функцию РАЗНДАТ.
В показанном примере формула в D5:
= РАЗНДАТ(B5; C5; «м»)
Обратите внимание, что РАЗНДАТ автоматически округляется вниз.
Функция РАЗНДАТ — это функция «совместимости», которая приходит из Лотос 1-2-3. По неизвестным причинам это документировано в Excel 2000, но вы можете использовать его в своих формулах во всех версиях Excel с того времени.
РАЗНДАТ принимает 3 аргумента: дата начала, дата окончания и единица измерения. В этом случае мы хотим месяцы, поэтому мы поставляем «м» для единицы.
РАЗНДАТ автоматически вычисляет и возвращает число в течение месяцев, округленное вниз.
РАЗНДАТ округляется по умолчанию. Если вы хотите рассчитать месяцы до ближайшего целого месяца, вы можете сделать простую корректировку формулы:
= РАЗНДАТ(нач_дата; кон_дата + 15; «м»)
Это гарантирует, что даты окончания, относящиеся ко второй половине месяца, рассматриваются как даты в следующем месяце, эффективно округляя конечный результат.
Получить год с даты
= ГОД(дата)
Если вам необходимо извлечь год из даты, вы можете использовать функцию ГОД. В общей форме приведенной выше формулы дата должна быть в форме, которую Excel распознает как действительную дату.
Функция ГОД принимает только один аргумент — дату, из которой вы хотите извлечь год. В этом примере формула:
= ГОД(B3)
B4 содержит значение даты для 5 января 2016 года. Функция ГОД возвращает число 2016, представляющее год даты.
Обратите внимание, что вы можете использовать ГОД для извлечения года из дня, введенного как текст:
= ГОД(«1/5/2016»)
Однако использование текста для дат может приводить к непредсказуемым результатам на компьютерах с использованием разных региональных настроек даты. В общем, лучше (и более гибко) указать адрес ячейки, которая уже содержит действительную дату.
Извлечение даты с даты и времени
= ЦЕЛОЕ(дата)
Excel обрабатывает даты и время, используя схему, в которой даты — это серийные номера, а время — дробные значения. Например, 1 июня 2000 г. 12:00 PM представлено в Excel как число 36678,5, где 36678 — это дата, а 0,5 — время.
Если у вас есть даты со значениями времени, и вы хотите извлечь только часть даты, вы можете использовать формулу, которая использует функцию ЦЕЛОЕ. Итак, если A1 содержит дату и время, 1 июня 2000 г. 12:00, формула, приведенная ниже, возвращает только часть даты (36678):
= ЦЕЛОЕ(A1)
Временная часть значения (дробная часть) отбрасывается. Вы также можете использовать функцию ОТБР с тем же результатом:
= ОТБР (A1)
Заметки:
- При использовании любого из приведенных выше методов убедитесь, что вы используете формат даты для результата, который не включает время. В противном случае вы увидите время, отображаемое как 12:00 AM.
- Для дат и времени (которые должны быть положительными в Excel) нет разницы в использовании ЦЕЛОЕ и ОТБР для извлечения целого числа. Но ЦЕЛОЕ фактически округляет числа до ближайшего целого, что делает разницу, когда значения отрицательные.
Извлечение времени с даты и времени
= ОСТАТ(дата; 1)
Excel обрабатывает даты и время, используя схему, в которой даты — это серийные номера, а время — дробные значения. Например, 1 июня 2000 г. 12:00 PM представлено в Excel как число 36678,5, где 36678 — это дата, а .5 — время.
Если у вас есть даты со значениями времени, и вы хотите извлечь только часть времени (дробную часть), вы можете использовать формулу, которая использует функцию ОСТАТ. Если предположить, что A1 содержит дату и время 1 июня 2000 г. 12:00, формула, приведенная ниже, вернет только часть времени (0,5):
= ОСТАТ(A1;1)
Функция ОСТАТ возвращает остаток от деления. Первый аргумент — это число, а второй — делитель. Вот несколько примеров:
= ОСТАТ(5;2) // возвращает 1
= ОСТАТ(7;5) // возвращает 2
Таким образом, если вы используете ОСТАТ с делителем 1, результат будет дробной частью числа, если таковой имеется, потому что каждое целое число может быть равномерно разделено само по себе. Например:
= ОСТАТ(3.125;1) // возвращает 0.125
Короче говоря, = ОСТАТ(число, 1) возвращает только дробную часть числа, отбрасывая целую часть, поэтому это удобный способ извлечь время из даты и времени.
Примечание. Если вы используете эту формулу, чтобы отделить время от даты и времени, вам необходимо настроить формат числа в подходящий формат времени.
Получить возраст от дня рождения
= ЦЕЛОЕ(ДОЛЯГОДА (дата рождения; СЕГОДНЯ ()))
Если вам необходимо рассчитать возраст человека с даты его рождения, вы можете сделать это с помощью функций ДОЛЯГОДА, ЦЕЛОЕ и СЕГОДНЯ. В общей версии приведенной выше формулы, дата рождения — день рождения человека с года, а СЕГОДНЯ — дата, на которую рассчитывается возраст. Поскольку эта формула использует функцию СЕГОДНЯ, она будет продолжать рассчитывать и правильный возраст в будущем.
В этом примере активная ячейка содержит эту формулу:
= ЦЕЛОЕ(ДОЛЯГОДА(D3; СЕГОДНЯ()))
ДОЛЯГОДА вычисляет десятичное число, представляющее долю года между двумя датами. Чтобы определить долю года в десятичном значении, Excel использует целые дни между двумя датами. Это просто в Excel, потому что все даты — это просто серийные номера.
Таким образом, в этом случае дата рождения предоставляется в качестве даты начала из ячейки D4, а сегодняшняя дата предоставляется в качестве конечной даты, с любезного разрешения функции СЕГОДНЯ.
Результатом ДОЛЯГОДА для Майкла Чанга, здесь в феврале 2016 года, является что-то вроде этого:
14.7333333333333
Затем функция ЦЕЛОЕ берет на себя и округляет это число до целочисленного значения, которое является числом 14. Хотя Майклу почти 15 лет, ему все еще только 14 по годам, так что это правильный результат.
Если вы хотите рассчитать возраст человека на определенную дату, просто замените функцию СЕГОДНЯ на эту дату или ссылку на ячейку на эту дату.
Чтобы проверить день рождения и вернуть «Несовершеннолетний» или «Взрослый», вы можете обернуть формулу возраста в функции ЕСЛИ следующим образом:
= ЕСЛИ(ЦЕЛОЕ(ДОЛЯГОДА(A1; СЕГОДНЯ())) <18; «Несовершеннолетний»; «Взрослый»)
Вы можете заменить 18 любым возрастом, имеющим смысл для вашей ситуации.
Чтобы рассчитать возраст на определенную дату, учитывая дату рождения, вы можете использовать функцию ДАТА вместо функции СЕГОДНЯ следующим образом:
= ЦЕЛОЕ(ДОЛЯГОДА(A1; ДАТА (2016;1;1)))
Где A1 содержит дату рождения.
Получайте дни, часы и минуты между датами
= ЦЕЛОЕ(конец-начало) & «дни» & ТЕКСТ(конец-начало; «ч» «часы» «м» «мин-ы» «»)
Чтобы вычислить и отобразить дни, часы и минуты между двумя датами, вы можете использовать функцию ТЕКСТ с небольшой помощью функции ЦЕЛОЕ.
В показанном примере формула в D5:
= ЦЕЛОЕ(C5-B5) &»дни»&ТЕКСТ(C5-B5; «ч» «часы» «м» «мин-ы» «»)
Большая часть работы в этой формуле выполняется функцией ТЕКСТ, которая применяет формат часового номера в часах и минутах к значению, созданному путем вычитания даты начала с конечной даты.
ТЕКСТ (C5-B5; «ч» «часы» «м» «мин-ы» «»)
Это пример вставки текста в пользовательский формат числа, и этот текст должен быть окружен дополнительной парой двойных кавычек.
Значение для дней вычисляется с помощью функции ЦЕЛОЕ, которая просто удаляет целую часть конечной даты минус дата начала:
ЦЕЛОЕ(C5-B5)
Хотя вы можете использовать «д» в настраиваемом числовом формате в течение нескольких дней, значение «перевернется» обратно к нулю, когда число дней больше 31.
Чтобы включить секунды, вы можете расширить формат пользовательских чисел следующим образом:
= ЦЕЛОЕ(C5-B5) & «дни» & ТЕКСТ(C5-B5; «ч» «часы» «м» «мин-ы» «с» «сек-ы» «»))
Получить финансовый квартал с даты
= ВЫБОР(МЕСЯЦ (дата); 1;1;1;2;2;2;3;3;3;4;4;4)
Если вы хотите рассчитать финансовый квартал от даты, а финансовый квартал начинается в месяце, отличном от января, вы можете использовать формулу, основанную на функции ВЫБОР.
Примечание: если вам просто нужно вычислить «нормальный» квартал на основе четвертичной системы, которая начинается в январе, вы можете использовать эту более простую формулу.
В показанном примере формула в ячейке D5:
= ВЫБОР(МЕСЯЦ (B5); 4;4;4;1;1;1;2;2;2;3;3;3)
Эта формула возвращает число 1-4, которое соответствует четвертичной системе, которая начинается в апреле и заканчивается в марте.
Функция выбора использует первый аргумент для «выбора» оставшихся элементов. Например, в схеме, где 1 = маленький, 2 = средний и 3 = большой, эта формула «отобразит» число 2 на «среднее».
= ВЫБОР (2; «маленький»; «средний»; «большой»)
В случае фискальных кварталов мы можем использовать эту же идею для сопоставления любого входящего месяца (1-12) с одним из 4 квартальных значений. Нам просто нужно использовать функцию МЕСЯЦ, чтобы получить номер месяца в качестве первого аргумента, а затем предоставить 12 номеров (по одному на каждый месяц года), которые тщательно упорядочены, чтобы отразить желаемый финансовый год:
= ВЫБОР(МЕСЯЦ (B5); 1;1;1;2;2;2;3;3;3;4;4;4) // Начало январь
= ВЫБОР(МЕСЯЦ (B5); 4;4;4;1;1;1;2;2;2;3;3;3) // Начало апрель
= ВЫБОР (МЕСЯЦ (B5); 3;3;3;4;4;4;1;1;1;2;2;2) // Начало июль
Если вы хотите, чтобы номер квартала включал «К» со значением года, вы можете объединить его:
= «К» & ВЫБОР(МЕСЯЦ (дата); 1;1;1;2;2;2;3;3;3;4;4;4) & «-» & ГОД(дата)
Возвращает значения типа: «К1 — 2016», «К2 — 2016» и т. д.
Получить процент завершения года
= ДОЛЯГОДА(ДАТА (ГОД (дата); 1;1); дата)
Если вам необходимо вычислить процент, оставшийся в году, на основе данной даты, вы делаете это с помощью формулы, основанной на функции ДОЛЯГОДА.
В примере формула в C5, которая вычисляет процент оставшегося года, выглядит так:
= ДОЛЯГОДА(ДАТА(ГОД(B5); 1;1); B5)
Функция ДОЛЯГОДА принимает две даты, дату начала и дату окончания и вычисляет время между ними в дробных годах. В этом случае мы используем конечную дату как есть, но генерируем начальную дату, равную первому дню того же года, с этим битом кода:
ДАТА (ГОД (B5); 1;1)
Это извлекает значение года из даты в B5 и вставляет его в функцию ДАТА, а также 1 для месяца и дня.
В результате функция ДОЛЯГОДА возвращает десятичное значение, соответствующее доле года между двумя датами.
Когда это значение форматируется с использованием формата номера в процентах, он показывает процент года, который был завершен.
Чтобы вычислить процент оставшегося года, просто скорректируйте формулу, чтобы вычесть дробный год из 1. В примере D5 содержит эту формулу:
= 1-ДОЛЯГОДА(ДАТА(ГОД(B5); 1;1); B5)
Получить квартал от даты
= ОКРУГЛВВЕРХ (МЕСЯЦ (дата) / 3;0)
Если вы хотите рассчитать квартал (то есть 1,2,3,4) от даты, вы можете использовать функцию ОКРУГЛВВЕРХ вместе с МЕСЯЦ.
В показанном примере формула в ячейке C5:
= ОКРУГЛВВЕРХ(МЕСЯЦ (B5) / 3;0)
В этом случае формула сначала извлекает месяц как число от 1 до 12, а затем делит это число на 3. Затем результат округляется до ближайшего целого числа с помощью функции ОКРУГЛВВЕРХ.
Функция ОКРУГЛВВЕРХ работает так же, как функция ОКРУГЛ, за исключением того, что ОКРУГЛВВЕРХ всегда округляет цифры от 1 до 9 до заданного количества цифр.
Если вы хотите, чтобы номер четверти включал «Ч», вы можете конкатенировать. Формула в D5:
= «Ч» & ОКРУГЛВВЕРХ(МЕСЯЦ (B5) / 3;0)
Результатом является буква «Ч», добавленная к номеру квартала.
Получить ту же дату в следующем месяце
= ДАТАМЕС(дата; 1)
Чтобы получить ту же дату в следующем месяце с определенной даты, вы можете использовать функцию ДАТАМЕС.
В показанном примере формула в ячейке B5:
=ДАТАМЕС (B5;1)
ДАТАМЕС может получить «ту же дату» в будущем или в прошлом, исходя из количества предоставленных месяцев. Когда 1 дается месяцами, ДАТАМЕС получает ту же дату в следующем месяце.
Чтобы получить ту же дату за предыдущий месяц, используйте -1:
= ДАТАМЕС(дата; -1) // предыдущий месяц
Получить ту же дату в следующем году
=ДАТАМЕС (дата; 12)
Чтобы получить ту же дату в следующем году с определенной даты, вы можете использовать функцию ДАТАМЕС.
В показанном примере формула в ячейке B5:
= ДАТАМЕС(B5;12)
ДАТАМЕС может получить «ту же дату» в будущем или в прошлом, исходя из количества предоставленных месяцев. Когда 12 дается на месяцы, ДАТАМЕС получает ту же дату в следующем году.
Чтобы получить ту же дату за предыдущий месяц, используйте -12:
= ДАТАМЕС(дата; -12) // предыдущий год
Получить дату начала в соответствии с установленной датой
= РАБДЕНЬ(цель; дни; праздники)
Чтобы рассчитать требуемую дату начала в соответствии с установленной датой запуска / запуска / завершения, за исключением нерабочих дней, таких как выходные и праздничные дни, вы можете использовать функцию РАБДЕНЬ.
В показанном примере формула в D6:
= РАБДЕНЬ(B6; C6; B9: B11)
Начиная с даты окончания Пт, 06-Янв-2015, функция РАБДЕНЬ отсчитывает назад 10 рабочих дней (исключая выходные и праздничные дни) и возвращает Вт, 18-дек-2014. Это необходимая дата начала активности, для которой требуется 10 рабочих дней.
Функция РАБДЕНЬ принимает три аргумента: дата начала, дни и (необязательно) праздники. Затем он добавляет дни к дате, автоматически исключая выходные и праздничные дни (если они предусмотрены).
В этом случае мы хотим считать назад от даты в будущем (дату запуска) на определенное количество рабочих дней. Решением является использование отрицательного значения для дней.
При отрицательном значении дня РАБДЕНЬ вычитает дни с даты начала, принимая во внимание выходные и праздничные дни.
Обратите внимание, что праздники не являются обязательными. Результат в D5 показывает разницу, когда отпуска не предусмотрены.
Если в вашем расписании пользовательские выходные дни (то есть что-то отличается от субботы и воскресенья), используйте функцию РАБДЕНЬ.МЕЖД вместо РАБДЕНЬ.
Получить номер недели с даты
= НОМНЕДЕЛИ (дата)
Если вам необходимо получить номер недели со дня с даты, вы можете использовать функцию НОМНЕДЕЛИ. Дата должна быть в формате, который Excel распознает как действительную дату.
Функция НОМНЕДЕЛИ принимает два аргумента, дату и, необязательно, аргумент с именем Тип возвращаемого значения, который управляет схемой, используемой для вычисления номера недели.
В этом примере формула:
= НОМНЕДЕЛИ (B5)
B4 содержит значение даты для 5 января 2016 года. Функция ДЕНЬ возвращает число 2, представляющее число вычисляемой недели.
Обратите внимание, что по умолчанию функция НОМНЕДЕЛИ использует схему, где неделя 1 начинается 1 января, а неделя 2 начинается в следующее воскресенье (когда аргумент Тип возвращаемого значения опущен или поставлен как 1).
При значении Тип возвращаемого значения 2 неделя 1 начинается 1 января, а неделя 2 начинается в следующий понедельник.
С номерами недель в неделю неделя 1 начинается в понедельник первой недели в году с четверга. Это означает, что первый день года для недель ISO — это всегда понедельник в период с 29 января по 4 января.
Начиная с Excel 2010 для Windows и Excel 2011 для Mac, вы можете сгенерировать номер недели ISO, используя 21 как Тип возвращаемого значения:
= НОМНЕДЕЛИ(дата; 21)
В Excel 2013 появилась новая функция НОМНЕДЕЛИ.ISO.
Как в Excel быстро и легко получить номер недели с заданной даты? Обычно функция WEEKNUM может помочь вам решить эту задачу как можно быстрее.
- Рассчитайте, чтобы получить номер недели от даты в году
- Рассчитайте, чтобы получить номер недели от даты в месяце
Рассчитайте, чтобы получить номер недели от даты в году
По умолчанию функция WEEKNUM может помочь вам получить номер недели для любой заданной даты в году, общий синтаксис:
=WEEKNUM(date, [return_type])
- date: Дата, с которой вы хотите получить номер недели.
- return_type: Необязательный. Число, определяющее день начала недели. Номер по умолчанию — 1. (указывает, что неделя начинается с воскресенья).
- DATE: Эта функция используется для объединения чисел года, месяца и дня из отдельных ячеек в действительную дату.
Число return_type указывает на начало недели:
| Тип_возврата | Неделя начинается |
| 1 или 17 или опущено | Воскресенье |
| 2 или 11 | понедельник |
| 12 | вторник |
| 13 | среда |
| 14 | четверг |
| 15 | пятница |
| 16 | Сб |
| 21 | Понедельник (система даты недели ISO) |
Tips: Для функции WEEKNUM используются две разные системы нумерации недель:
- Система 1: Неделя, содержащая 1 января, считается 1-й неделей года. В этой системе неделя традиционно начинается в воскресенье.
- Система 2: (Система даты недели ISO) В этой системе неделя начинается в понедельник, а номер недели 1 устанавливается на первую неделю года, которая содержит четверг.
Все типы возврата, перечисленные выше, применимы к Системе 1, но тип возврата 21 используется в Системе 2.
Чтобы вычислить номер недели от даты в традиционной системе:
Чтобы получить номер недели с заданной даты, вы можете использовать следующую формулу:
=WEEKNUM(B2)
Затем перетащите дескриптор заполнения вниз к ячейкам, которые вы хотите использовать, и все номера недель будут возвращены из дат:
Чтобы вычислить номер недели от даты в системе ISO:
Если вам нужно вернуть номер недели ISO для некоторых дат, примените следующую формулу:
=WEEKNUM(B2,21)
И тогда вы получите следующий результат:
Рассчитайте, чтобы получить номер недели от даты в месяце
Иногда вам нужно получить номера недель в месяцах, а не в годах, в Excel нет прямой функции для этого. Но вы можете объединить ФУНКЦИИ WEEKNUM, DATE и MONTH вместе для решения этой задачи.
Вычислить номера недель месяца от даты (неделя, начинающаяся в воскресенье):
Введите или скопируйте приведенную ниже формулу в пустую ячейку, в которой вы хотите получить результат:
=WEEKNUM(B2)-WEEKNUM(DATE(YEAR(B2), MONTH(B2),1))+1
И тогда вы получите результаты, как показано на следующем скриншоте:
Вычислить номера недель месяца по ISO от даты (неделя начинается с понедельника):
Чтобы получить номера недель месяца по ISO от даты, вы должны использовать следующую формулу:
=WEEKNUM(B2,21)-WEEKNUM(DATE(YEAR(B2), MONTH(B2),1),21)+1
И все номера недель месяца по ISO были извлечены, как показано на скриншоте ниже:
Используемые относительные функции:
- WEEKNUM:
- Эта функция используется для извлечения номера недели из заданной даты.
Статьи с относительным номером недели:
- Преобразование номера недели в дату или наоборот в Excel
- Есть ли способ получить номер недели по заданной дате или извлечь диапазон дат из определенного номера недели и года в Excel?
- Получить месяц из номера недели и года в Excel
- Если у вас есть два столбца в Excel, один из которых содержит номера лет, а другой — номера недель, как показано ниже, как вы можете получить месяцы непосредственно из них в следующем столбце?
- Подсчитайте / рассчитайте недели / месяцы / годы между двумя датами в Excel
- Вы когда-нибудь задумывались о том, сколько недель, месяцев или лет между двумя заданными датами в Excel?
- Добавить / вычесть количество недель до даты в Excel
- В этом руководстве вы узнаете, как добавить n недель к текущему моменту или вычесть n недель из данных в Excel.
Лучшие инструменты для работы в офисе
Kutools for Excel — Помогает вам выделиться из толпы
Хотите быстро и качественно выполнять свою повседневную работу? Kutools for Excel предлагает 300 мощных расширенных функций (объединение книг, суммирование по цвету, разделение содержимого ячеек, преобразование даты и т. д.) и экономит для вас 80 % времени.
- Разработан для 1500 рабочих сценариев, помогает решить 80% проблем с Excel.
- Уменьшите количество нажатий на клавиатуру и мышь каждый день, избавьтесь от усталости глаз и рук.
- Станьте экспертом по Excel за 3 минуты. Больше не нужно запоминать какие-либо болезненные формулы и коды VBA.
- 30-дневная неограниченная бесплатная пробная версия. 60-дневная гарантия возврата денег. Бесплатное обновление и поддержка 2 года.
Вкладка Office — включение чтения и редактирования с вкладками в Microsoft Office (включая Excel)
- Одна секунда для переключения между десятками открытых документов!
- Уменьшите количество щелчков мышью на сотни каждый день, попрощайтесь с рукой мыши.
- Повышает вашу продуктивность на 50% при просмотре и редактировании нескольких документов.
- Добавляет эффективные вкладки в Office (включая Excel), точно так же, как Chrome, Firefox и новый Internet Explorer.
Комментарии (1)
Оценок пока нет. Оцените первым!
Необходимость определить и вывести номер недели по дате возникает очень часто. Это особенно актуально для тех людей, которые занимаются различной отчетностью. Например, готовят для руководства краткие итоги работы за неделю.
Вы должны помнить, что существует как минимум несколько походов к нумерации номера недели.
- Первый подход используется России. Согласно стандарту ГОСТ ИСО 8601-2001 первой рабочей неделей года считается та, на которую выпадает первый четверг года.
- Второй подход заключается в том, что неделя, на которую приходится 1 января и считается первой неделей года.
Еще раз напомним вам, что в России используется первый из описанных выше походов.
Если у вас Excel 2003, то мы рекомендуем вам воспользоваться готовой формулой, которая выглядит следующим образом:
=ЦЕЛОЕ((A1-ДАТА(ГОД(A1-ДЕНЬНЕД(A1-1)+4);1;3)+ДЕНЬНЕД(ДАТА(ГОД(A1-ДЕНЬНЕД(A1-1)+4);1;3))+5)/7)
При использовании английской версии Excel формула выглядит как:
=INT((A1-DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3)+WEEKDAY(DATE(YEAR(A1-WEEKDAY(A1-1)+4),1,3))+5)/7)
В случае если вам все таки необходим второй подход, то для определения номера недели используйте формулу:
=1+ЦЕЛОЕ((A1-ДАТА(ГОД(A1+4-ДЕНЬНЕД(A1+6));1;5)+ДЕНЬНЕД(ДАТА(ГОД(A1+4-ДЕНЬНЕД(A1+6));1;3)))/7)
формула для англоязычной версии:
=1+INT((A1-DATE(YEAR(A1+4-WEEKDAY(A1+6)),1,5)+WEEKDAY(DATE(YEAR(A1+4-WEEKDAY(A1+6)),1,3)))/7)
Во всех вышеуказанных формулах A1 меняем на дату или ссылку на дату.
Все намного проще, если вы используете Excel 2007 или 2010. Начиная с этих версий появилась специальная функция, позволяющия определять номер недели по дате. (примечание: эту функцию можно включить и в Excel 2003, для этого необходимо подключить надстройку Пакет анализа через меню Сервис-Надстройки, но в данном случае, если документ будет открывать человек у которого эта настройка не включена, то он вместо номера недели увидит ошибку #ЗНАЧ!, поэтому применять ее в Excel 2003 мы не будем)
Функция называется НОМНЕДЕЛИ (в английской версии WEEKNUM). Синтаксис очень простой.
=НОМНЕДЕЛИ(Дата; Тип)
Очень важен второй параметр Тип, так как по умолчанию используется второй из вышеописанных подходов к началу отсчета номера недели.
Для России необходимо использовать формулу в следующем формате.
=НОМНЕДЕЛИ(А1; 21)
А1 – это дата или ссылка на дату.
В данном случае тип 21 означает, что номер первой недели будет считаться та, на которую приходится первый четверг года и первым днем недели является понедельник (примечание: во многих странах первым днем недели считается воскресенье)
Очень надеемся, что наша статья помогла Вам в решении Вашей проблемы. Будем благодарны, если Вы нажмете +1 и/или Мне нравится внизу данной статьи или поделитесь с друзьями с помощью кнопок расположенных ниже.
SirExcel.ru – Безграничные возможности Excel
Рассмотрим различные варианты получения номера недели по дате в Excel в зависимости от способа определения первого дня и способа нумерации.
Приветствую всех, уважаемые читатели блога TutorExcel.Ru.
Задача определения номера недели всегда остается актуальной, так как неделя является одним из основных временных интервалов в жизни и бизнесе — понедельные отчеты, планы, телепрограммы и т.д.
Однако, несмотря на внешне кажущуюся простоту задачи, в расчете есть определенные тонкости, о которых мы далее подробно поговорим.
Особенности расчета: нумерация и определение первого дня
Во-первых, в зависимости от страны может отличаться способ определения первой недели года.
В России (согласно ГОСТ ИСО 8601-2001, действует с 2002 г.) первой неделей считается неделя, которая содержит первый четверг года, т.е. неделя содержащая 4 января (другими словами, 1 января это любой день от понедельника до четверга). В США используют другой вариант нумерации, к примеру, у них 1 января начинается новая календарная неделя, независимо от дня недели.
Во-вторых, первый день недели в разных странах также может отличаться.
Для жителей России и стран Европы начало недели начинается с понедельника, но, например, в странах Северной и Южной Америки неделя начинается с воскресенья, а в некоторых странах Ближнего Востока с субботы.
Таким образом, в зависимости от того, какой конкретно способ расчета нам нужен и будем выстраивать алгоритм.
Способ 1. Неделя содержит первый четверг года
Давайте начнем с более популярного варианта, а именно, посчитаем номер недели для российского календаря.
Как мы уже выяснили, в России первой неделя должна содержать первый четверг года.
Для расчета можно воспользоваться следующей формулой:
Алгоритм расчета:
- К вычисляемой дате (напомню, что дата в Excel хранится в числовом виде) прибавляем 3 дня и вычитаем номер дня недели (1 для понедельника, 2 для вторника и т.д.);
Этим шагом мы добьемся, что для понедельника, вторника и среды вычисляемая дата увеличится, а для остальных дней (четверга, пятницы, субботы и воскресенья) уменьшится, что и позволит добиться включения первого четверга года в первую неделю. - Далее возьмем остаток от деления на 365,25 (средняя длительность года с учетом високосного года);
Этой операцией мы получим количество дней в текущем году для вычисляемой даты. - Делим полученный результат делим на 7;
Переводим дни в недели. - Прибавляем 1 и берем целую часть числа.
Начиная с версии Excel 2013 добавлена стандартная функция НОМНЕДЕЛИ.ISO (по стандарту ИСО), которую можно применить вместо выше приведенной формулы.
Синтаксис и описание функции НОМНЕДЕЛИ.ISO (в английской версии WEEKNUM.ISO):
НОМНЕДЕЛИ.ISO(дата)
Возвращает номер недели в году по стандарту ISO для указанной даты.
- Дата (обязательный аргумент) — код даты-времени.
Проверим работу функции на тех же датах, что и в предыдущем примере:
Результаты совпали, что и требовалось, теперь перейдем к другим вариантам календаря.
Способ 2. Первая неделя начинается 1 января
Для такого способа нумерации недель тоже есть вариант стандартной функции, причем он доступен и в более ранних версиях Excel.
Синтаксис и описание функции НОМНЕДЕЛИ (в английской версии WEEKNUM):
НОМНЕДЕЛИ.ISO(дата; [тип])
Возвращает номер недели года.
- Дата (обязательный аргумент) — код даты-времени;
- Тип (необязательный аргумент) — тип возвращаемого значения, 1 (по умолчанию; американский вариант, неделя начинается в воскресенье) и 2 (российский вариант, неделя начинается в понедельник).
В качестве примера рассмотрим 2017 г. где 1 января приходится на воскресенье, а 2 января на понедельник.
Соответственно, получается, что в американском варианте расчета недели меняются между 7 и 8 января, а в российском между 8 и 9 января:
Также возможные и другие различные значения аргумента Тип:
Первая цифра типа означает способ определения первой недели года (1 — неделя начинается 1 января, 2 — содержит первый четверг года), а вторая цифра определяет с какого дня начинается неделя (1 — понедельник, 2 — вторник, 3 — среда и т.д.)
Скачать файл с примером.
Спасибо за внимание!
Если у вас остались вопросы по теме статьи — пишите в комментариях.
Удачи вам и до скорых встреч на страницах блога TutorExcel.Ru!
Поделиться с друзьями:
Поиск по сайту:
В этом учебном материале вы узнаете, как использовать Excel функцию НОМНЕДЕЛИ с синтаксисом и примерами.
Описание
Microsoft Excel функция НОМНЕДЕЛИ возвращает номер недели из значения даты.
Функция НОМНЕДЕЛИ — это встроенная в Excel функция, которая относится к категории функций даты и времени.
Её можно использовать как функцию рабочего листа (WS) в Excel.
В качестве функции рабочего листа функцию НОМНЕДЕЛИ можно ввести как часть формулы в ячейку рабочего листа.
Синтаксис
Синтаксис функции НОМНЕДЕЛИ в Microsoft Excel:
НОМНЕДЕЛИ(дата_в_числовом_формате;[тип])
Аргументы или параметры
- дата_в_числовом_формате
- Значение серийной даты, от которой следует вычислить номер недели.
- тип
- Необязательно. Это число, указывающее первый день недели в году. Если этот параметр опущен, по умолчанию используется 1. Этот параметр может иметь одно из следующих значений:
типПояснение 1 (по умолчанию) Неделя начинается в воскресенье, а неделя, содержащая 1 января, является первой неделей в году. 2 Неделя начинается в понедельник, а неделя, содержащая 1 января, является первой неделей в году. 11 Неделя начинается в понедельник, а неделя, содержащая 1 января, является первой неделей в году. 12 Неделя начинается во вторник, а неделя, содержащая 1 января, является первой неделей в году. 13 Неделя начинается в среду, а неделя, содержащая 1 января, является первой неделей в году. 14 Неделя начинается в четверг, а неделя, содержащая 1 января, является первой неделей в году. 15 Неделя начинается в пятницу, а неделя, содержащая 1 января, является первой неделей в году. 16 Неделя начинается в субботу, а неделя, содержащая 1 января, является первой неделей в году. 17 Неделя начинается в воскресенье, а неделя, содержащая 1 января, является первой неделей в году. 21 Неделя начинается в понедельник, а неделя, содержащая первый четверг года, является первой неделей года (широко известная как европейская система нумерации недель)
Возвращаемое значение
Функция НОМНЕДЕЛИ возвращает числовое значение.
Примечание
- Серийная дата — это то, как Excel хранит даты внутри, и она представляет количество дней с 1 января 1900 года.
- См. также функцию НОМНЕДЕЛИ.ISO, если вы хотите определить номер недели с помощью стандартного календаря ISO.
Применение
- Excel для Office 365, Excel 2019, Excel 2016, Excel 2013, Excel 2011 для Mac, Excel 2010, Excel 2007
Тип функции
- Функция рабочего листа (WS)
Пример (как функция рабочего листа)
Рассмотрим несколько примеров функции НОМНЕДЕЛИ чтобы понять, как использовать Excel функцию НОМНЕДЕЛИ как функцию рабочего листа в Microsoft Excel:
В столбце A отображается параметр серийной даты для функции НОМНЕДЕЛИ, отформатированный с использованием МММ Д, ГГГГ. Чаще всего вам нужна отформатированная дата, а не серийная дата. Столбец B показывает дату из столбца A как неформатированную серийную дату. На основе электронной таблицы Excel выше могут быть возвращены следующие примеры НОМНЕДЕЛИ:
|
=НОМНЕДЕЛИ(A2) Результат: 1 =НОМНЕДЕЛИ(A3) Результат: 7 =НОМНЕДЕЛИ(A4) Результат: 14 =НОМНЕДЕЛИ(A5) Результат: 52 =НОМНЕДЕЛИ(«21.12.2016») Результат: 52 |
Вы можете изменить нумерацию недель в году с помощью параметра тип. Если вы передадите параметр 21 как тип, он изменит нумерацию недель так, чтобы неделя начиналась в понедельник, а первый четверг года был первой неделей года, например:
|
=НОМНЕДЕЛИ(«24.12.2016»;21) Результат: 51 |
Теперь дата «24.12.2016» приходится на 51-ю неделю, а не на 52-ю, как показано в предыдущем примере. Если вы хотите вернуть номер недели для стандартного календаря ISO, попробуйте использовать функцию НОМНЕДЕЛИ.ISO.


А в














































