Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше
В этой статье описаны синтаксис формулы и использование функции КОНМЕСЯЦА в Microsoft Excel.
Описание
Возвращает порядковый номер последнего дня месяца, отстоящего на указанное количество месяцев от даты, указанной в аргументе «нач_дата». Функция КОНМЕСЯЦА используется для вычисления даты погашения или даты платежа, которая приходится на конец месяца.
Синтаксис
КОНМЕСЯЦА(нач_дата;число_месяцев)
Аргументы функции КОНМЕСЯЦА описаны ниже.
-
нач_дата — обязательный аргумент. Начальная дата. Даты должны быть введены с использованием функции ДАТА или как результат вычисления других формул и функций. Например, для указания даты 23 мая 2008 года следует воспользоваться выражением ДАТА(2008;5;23). Если ввести даты как текст, это может привести к возникновению проблем.
-
Число_месяцев — обязательный аргумент. Количество месяцев до или после даты «нач_дата». Положительное значение аргумента «число_месяцев» означает будущие даты; отрицательное значение — прошедшие даты.
Примечание: Если значение аргумента «число_месяцев» не является целым числом, оно усекается.
Замечания
-
В приложении Microsoft Excel даты хранятся в виде последовательных чисел, что позволяет использовать их в вычислениях. По умолчанию дате 1 января 1900 года соответствует номер 1, а 1 января 2008 года — 39448, так как интервал между этими датами составляет 39 448 дней.
-
Если start_date не является допустимой датой, то EOMONTH возвращает #NUM! значение ошибки #ЗНАЧ!.
-
Если start_date «плюс месяцы» возвращает недействительные даты, то EOMONTH возвращает #NUM! значение ошибки #ЗНАЧ!.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Дата |
||
1-янв-11 |
||
Формула |
Описание |
Результат |
=КОНМЕСЯЦА(A2;1) |
Дата последнего дня месяца, следующего за датой в ячейке А2. |
28.02.2011 |
=КОНМЕСЯЦА(A2;-3) |
Дата последнего дня месяца, на три месяца раньше даты в ячейке А2. |
31.10.2010 |
Нужна дополнительная помощь?
slav Пользователь Сообщений: 232 |
В надстройках пакеты анализа включены. в ячейке A36 записана дата 01.02.2008 в формате ДД.ММ.ГГГГ в ячейке А37 формула =конмесяца(A36;1) в итоге имеем ошибку #ИМЯ? что за фигня такая? |
kim Пользователь Сообщений: 3139 Игорь |
Небольшой оффтопчик: |
Выдает — «31.03.2008», разбирайтесь, а «А» у вас не с «русским» акцентом?.. |
|
slav Пользователь Сообщений: 232 |
{quote}{login=}{date=25.11.2009 03:20}{thema=}{post}Выдает — «31.03.2008», разбирайтесь, а «А» у вас не с «русским» акцентом?..{/post}{/quote} нашел решение от ZVI =ДАТА(ГОД(A4);МЕСЯЦ(A4)+1;0) пожалуй, оно будет универсальным, чтобы пользователи не сталкивались с тойже проблемой, что и я. |
slav Пользователь Сообщений: 232 |
Excel стоит русский |
У Вас подключен пакет анализа для ВБА (он еше на вражеском языке называется), а надо Пакет анализа:))) |
|
slav Пользователь Сообщений: 232 |
{quote}{login=}{date=25.11.2009 04:50}{thema=}{post}У Вас подключен пакет анализа для ВБА (он еше на вражеском языке называется), а надо Пакет анализа:))) |
Guest Гость |
#8 25.11.2009 20:43:45 {quote}{login=The_Prist}{date=25.11.2009 05:13}{thema=Re: Re: }{post}{quote}{login=slav}{date=25.11.2009 05:09}{thema=Re: }{post}но как только формулу написал по-английски, то все заработало.{/post}{/quote}Да это ясно. Откуда взяться русскому написанию функции, если пакет англ.? Ведь все функции забиты в DLL, а в ней все функции в таком случае тоже на англ.{/post}{/quote} |
Содержание
- Как рассчитать последний день месяца в Excel
- Сколько дней в феврале для любого года и любой даты?
- Какой день недели для последнего дня месяца?
- Пример использования функции КОНМЕСЯЦА
- Как определить високосный год или нет в Excel?
- Функция КОНМЕСЯЦА
- Описание
- Синтаксис
- Замечания
- Пример
- Excel конмесяца
- Как вычислить последний день месяца в Excel
- Последний вторник месяца в MS EXCEL
- Сколько осталось дней до конца месяца в MS EXCEL
- Функции даты и времени (справка)
- Вычисление функции конмесяца в ексель 2010
- Извлечь первый и последний день месяца из даты (Формулы/Formulas)
Как рассчитать последний день месяца в Excel
Часто в процессе работы с датами возникает необходимость динамического определения даты и последнего дня недели в месяце. Естественно можно просто посмотреть в обычный календарь, но для автоматизации некоторых задач в Excel с помощью формул нужно динамически получить дату последнего месяца особенно в феврале и определить день недели. Ведь у високосного года (366) месяц февраль имеет 29 дней, а в обычном году – 28.
Сколько дней в феврале для любого года и любой даты?
Для начала рассмотрим, как вычислить дату последнего дня февраля месяца для любого года, чтобы определить високосный год или нет:
Анализируя пример на данном рисунке, следует помнить, что данную формулу можно применять для любого месяца, чтобы получить дату последнего дня, а не только для февраля. Иначе она выглядела бы так:
Функция ДАТА позволяет генерировать дату на лету с помощью трех аргументов:
- Год – можно указать любое число только лишь в диапазоне от 1900 и до 9999.
- Месяц – любое положительное или отрицательное число.
- День – любое положительное или отрицательное число.
Например, если в третьем аргументе указано число 0 как номер дня, Excel вычислит дату последнего дня из предыдущего месяца. Для наглядного примера составим формулу с числом 0, которая возвращает 29 февраля 2000-го года:
В следующем примере формулы вместо ввода статических значений в первые 2 аргумента функции ДАТА (год и месяц), используется функция ГОД, которая возвращает годы с исходных дат. Аналогично используется функция МЕСЯЦ возвращающая порядковый номер месяца в году из исходной даты. К этому номеру в формуле добавляется число 1. Благодаря чему мы получаем номер следующего месяца. Так как в третьем аргументе стоит число 0, автоматически получаем порядковый номер последнего дня в текущем месяце, который нас интересует.
Какой день недели для последнего дня месяца?
На этом рисунке ниже показано, как вычислить день недели и дату последнего дня февраля для любого года:
Формула состоит из двух частей, разделенных соединяющим оператором амперсантом (&» — «&):
- В первой части функция ТЕКСТ преобразует числовое значение, которое возвращает функция ДАТА в формат даты. Он указано во втором аргументе функции – «дд.мм.гг»
- Во второй части функция ТЕКСТ определяет день недели для исходной даты в первом ее аргументе, с помощью формата ячеек «дддд» указанном во втором аргументе.
Пример использования функции КОНМЕСЯЦА
В новых версиях Excel предусмотрена функция КОНМЕСЯЦА, которая служит альтернативным решением для выше описанной формулы:
Благодаря функции КОНМЕСЯЦА можно определять дату для текущего, предыдущего или будущего месяца заполнив лишь только 2 аргумента:
- Нач_дата – исходная дата или ссылка на нее.
- Число_месяцев – порядковый номер месяца начиная от исходной даты. Может быть любое положительное или отрицательное число. Примеры заполнения аргументов для функции КОНМЕСЯЦА, которая возвращает дату 29 февраля 2000-го года:
Если же мы укажем во втором аргументе отрицательное число, тогда функция возвращает нам дату последнего дня для предыдущего месяца:
Разумеется, если мы указываем во втором аргументе число 0 тогда получим необходимое значение даты последнего дня для текущего месяца:
Как определить високосный год или нет в Excel?
Чтобы определить високосный год или нет в Excel существует множество решений. Вот несколько из них:
При работе с датами особую сложность предоставляет тот факт, что раз в 4-е года количество дней в году составляет 366, тогда как в обычных годах 365. Поэтому иногда приходится воспользоваться вышеописанными примерами и формулами для различных вычислений в Excel.
Источник
Функция КОНМЕСЯЦА
В этой статье описаны синтаксис формулы и использование функции КОНМЕСЯЦА в Microsoft Excel.
Описание
Возвращает порядковый номер последнего дня месяца, отстоящего на указанное количество месяцев от даты, указанной в аргументе «нач_дата». Функция КОНМЕСЯЦА используется для вычисления даты погашения или даты платежа, которая приходится на конец месяца.
Синтаксис
Аргументы функции КОНМЕСЯЦА описаны ниже.
нач_дата — обязательный аргумент. Начальная дата. Даты должны быть введены с использованием функции ДАТА или как результат вычисления других формул и функций. Например, для указания даты 23 мая 2008 года следует воспользоваться выражением ДАТА(2008;5;23). Если ввести даты как текст, это может привести к возникновению проблем.
Число_месяцев — обязательный аргумент. Количество месяцев до или после даты «нач_дата». Положительное значение аргумента «число_месяцев» означает будущие даты; отрицательное значение — прошедшие даты.
Примечание: Если значение аргумента «число_месяцев» не является целым числом, оно усекается.
Замечания
В приложении Microsoft Excel даты хранятся в виде последовательных чисел, что позволяет использовать их в вычислениях. По умолчанию дате 1 января 1900 года соответствует номер 1, а 1 января 2008 года — 39448, так как интервал между этими датами составляет 39 448 дней.
Если start_date не является допустимой датой, то EOMONTH возвращает #NUM! значение ошибки #ЗНАЧ!.
Если start_date «плюс месяцы» возвращает недействительные даты, то EOMONTH возвращает #NUM! значение ошибки #ЗНАЧ!.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Источник
Excel конмесяца
Как вычислить последний день месяца в Excel
Смотрите также: 2003 эта функция той частью =», что в Excel, когда делаю F2IvanOKКазанский Windows RT с
- формате, отстоящую вперед выходные дни и от начальной даты.
Функция
дней до конца
вторник), приведено в=КОНМЕСЯЦА($A2;0)-ОСТАТ(КОНМЕСЯЦА($A2;0) по формуле ниже:Чтобы получить дату последнегоSerge 007 используется только кириллицей,а вы все
- что в VBA потоп enter все: ето реальный пример
,
архитектурой ARM. Подробнее
или назад на их количество.КОНМЕСЯЦАОписание года можно в
статье Первый вторник
+4
=EOMONTH(A1,-8) дня месяца в,ну вы согласны с поэтому будет работать таки попробуйте тоСмотрите видео, так стает на всои с кода который
cells(i,1).FormulaR1C1 = «(КОНМЕСЯЦА(RC[-3],0))»вот об этих различиях.
заданное количество рабочих
ТДАТА
Возвращает дату в числовом
Последний вторник месяца в MS EXCEL
ДАТА этой статье. месяца (обратная задача).
;7)=КОНМЕСЯЦА(A1;-8) Excel, используйте функцию тем что даже на русском языке, что я писал
будет понятнее места. вот в чем работает и дает
часть формулы, ноIvanOK
дней.Возвращает текущую дату и формате для последнего
Возвращает заданную дату вФормула =»Осталось «&КОНМЕСЯЦА(A1;0)-A1&» дней до
Найдем количество дней, оставшихсяДля определения последней пятницыПримечание:
EOMONTH на вашем примере а в 2007/2010 и все пойметеhttp://youtu.be/5ghjY0V39fk
проблема. нормальный результат в все ошыбки именно: я програмно заполняюРАБДЕНЬ.МЕЖД время в числовом дня месяца, отстоящего числовом формате. конца «&ТЕКСТ(A1;»[$-FC19]ММММ») позволяет до конца месяца.
месяца:Вычисления происходят примерно(End of Month). есть етот косяк — это ужевы мне подалиIvanOKи ето в 2003, проблема возникла из-за етой функции,
Сколько осталось дней до конца месяца в MS EXCEL
формулы конмесяца иВозвращает числовое значение даты,
формате. вперед или назадРАЗНДАТ вывести фразу «ОсталосьЕсли требуется найти сколько=КОНМЕСЯЦА($A2;0)-ОСТАТ(КОНМЕСЯЦА($A2;0)
В русской версииvitalife встроенная функция, поэтому хорошую идею, в: = есть, попробуйте 2010
в 2010 саму причину проблеми он выбивает #имя, предшествующей заданному количествуСЕКУНДЫ на заданное числоВычисляет количество дней, месяцев
26 дней до
осталось дней до+1
— 8 = –: Добрый день. если ее прописываем ексель 2003 я
для себя наДобавлено через 52 минутыпротестировал в 2003, понять не могу но когда при рабочих дней илиПреобразует дату в числовом
месяцев. или лет между конца августа». Название конца месяца начиная
Функции даты и времени (справка)
;7) -2 или -2КОНМЕСЯЦАПодскажите, как из
через .Formula или етого не замечал, и так ипроблема решена с работает и так почему так нажатии клавиши F2 следующей за ними, формате в секунды.ЧАС двумя датами. Эта месяца склоняется! см.
В файле примера приведена
(конец месяца). даты извлечь первый
.FormulaR1C1, то нужно
а вот 2010 так, разных офисах помощю вашего совета и етак. к 2010ето все работает. проверено
руководствуясь при этомВРЕМЯ
Преобразует дату в числовом
функция полезна в файл примера. то нужно записать
универсальная формула для
10, т.е. получаетсяДля примера попробуем получить
и последний день
писать на английском, с етим проблема и вы меня
еще не тестил. Serge 007 ошыбка прекрасно исчезает. параметрами, указывающими выходныеВозвращает заданное время в
формулах расчета возраста.О форматировании дат читайте формулу нахождения нужного дня октябрь 2011 года. дату последнего дня
либо все писатьSerge 007
поймете)
2003 понимает иВсе имена заняты: Вместо
то есть формула
дни и их числовом формате.
ДАТАЗНАЧ в статье Пользовательский формат
по порядковому номеруУрок подготовлен для Вас текущего месяца.
Например, есть дата:
на русском, но, ну даже наSerge 007 так и етак. : А то, что»(КОНМЕСЯЦА(RC[-3],0))»
считается нормально, в
количество.ВРЕМЗНАЧВозвращает номер недели по
Преобразует дату из текстового
ДАТЫ и ВРЕМЕНИВ формуле предполагается, что
командой сайта office-guru.ru=EOMONTH(A1,0)
через .FormulaLocal вашем видео показано
: Ткните пальцем где
Serge 007 идет обращение к
чем проблема, етоГОДПреобразует время из текстового
ISO для заданной
формата в числовой. в MS EXCEL. если насупил последнийВ качестве аргументов формулыИсточник: http://www.excel-easy.com/examples/last-day-of-the-month.html
Нужно из нееSerge 007 что 2003 на есть «=» в:
третьему с конца
»=EOMONTH(RC[-3],0)» все в офисеПреобразует дату в числовом формата в числовой. даты.ДЕНЬЧтобы просмотреть более подробные день месяца, то
задаются: порядковый номер
Перевел: Антон АндроновПримечание
: Ну наконец-то! А русском выдает нормально, Вашей записи ВыIvanOK
столбцу — этоIvanOK 2010 хотя в формате в год.СЕГОДНЯМИНУТЫПреобразует дату в числовом сведения о функции, целых дней уже дня недели, деньАвтор: Антон Андронов: функция
Вычисление функции конмесяца в ексель 2010
ячейку B2 дату: то всё утверждаете а на 2010 видео смотрели? Специально, не путайте форумчан так и задумано?: 2003 етой проблемыДОЛЯГОДАВозвращает текущую дату вПреобразует дату в числовом формате в день щелкните ее название не осталось в недели, месяц и
Определим последний вторник месяца,EOMONTH 01.06.2017 г., в что работает нет. вот и для Вас снял,Вот это:
IvanOKSerge 007 нет вообще
Возвращает долю года, которую числовом формате. формате в минуты. месяца.
в первом столбце. этом месяце. год. Универсальная формула последнюю пятницу или(КОНМЕСЯЦА) возвращает порядковый ячейку B3 дату:Вот это-то и
вся проблема
составляет количество днейДЕНЬНЕДМЕСЯЦДНИПримечание:Если требуется найти сколько
представляет собой комбинацию последнюю среду.
номер даты. Примените 30.06.2017 г. интересно, что заm-ch ерунду не писали
НЕ БУДЕТ работатьВсе имена заняты
в 2003 работает: Может с F9 между начальной иПреобразует дату в числовомПреобразует дату в числовомВозвращает количество дней между Маркер версии обозначает версию
осталось дней до двух вышеуказанных формулПусть в ячейке формат даты для
Файл во вложении. косяк в 2003,: Будет работать либоЕсли У Вас НИ В ОДНОЙ, не важно куда
без вяких проблем связано (автоматический пересчет конечной датами. формате в день формате в месяцы. двумя датами. Excel, в которой конца месяца от (файл примера размещенА2 правильного отображения.Заранее спасибо. что FormulaR1C1 принимается так, либо по работает — так версии Excel по оно обращается проблемаSerge 007
формул)? Если попробоватьВажно:
недели.
ЧИСТРАБДНИДНЕЙ360
она впервые появилась. произвольной даты, расположенной в статье Первый
может находится дата.Теперь попытаемся вычислить дату_Boroda_ на локальном языке?
другому (проверил только продемонстрируйте это причине того что в другом. при: Это вряд ли не F2 и Вычисляемые результаты формул иНОМНЕДЕЛИВозвращает количество полных рабочихВычисляет количество дней между В более ранних в ячейке вторник месяца). Для определения последнего последнего дня следующего
: начТакого быть не
что в 2003
IvanOK это НЕ ФОРМУЛА, внесении формулы вВ таком виде, Enter, а F9 некоторые функции листаПреобразует дату в числовом
дней между двумя двумя датами на версиях эта функцияА1Решение обратной задачи: если понедельника месяца можно месяца.=B1-ДЕНЬ(B1)+1
должно (необходимо использовать и в 2007):
а текст. Для ячейку не делаеться как Вы выложили, нажать. Excel могут несколько формате в число, датами. основе 360-дневного года.
отсутствует. Например, маркер, то используйте формулу: дана дата, а использовать формулу:
=EOMONTH(A1,1)илиКод=КОНМЕСЯЦА(B1;-1)+1илиКод=—ТЕКСТ(B1;»1.М.г»)А последняя и FormulaLocal), однако фактфункция КОНМЕСЯЦА() вSerge 007 того что бы
расчет, а выдает код не будетКазанский отличаться на компьютерах которое указывает, наЧИСТРАБДНИ.МЕЖДДАТАМЕС версии 2013 означает,
=КОНМЕСЯЦА(A1;0)-A1 нужно определить, какой=КОНМЕСЯЦА($A2;0)-ОСТАТ(КОНМЕСЯЦА($A2;0)=КОНМЕСЯЦА(A1;1) так, без единички, налицо. Так что
2003 офисе изначально, я часть формулы выражение стало формулой? ошыбку #имя, проблема работать в принципе,
: Покажите код. Возможно, под управлением Windows какую неделю годаВозвращает количество полных рабочихВозвращает дату в числовом что данная функцияСОВЕТ по счету это+5Мы даже можем рассчитать получитсяКод=—ТЕКСТ(B1;»М.г») в 2010 работает отсутствует, работает только показал и моя оно обязано начинаться
в том что в любой версии FormulaLocal вместо Formula. с архитектурой x86
приходится дата. дней в интервале формате, отстоящую на доступна в выпуске:
день недели в;7) дату последнего дняконКод=КОНМЕСЯЦА(B1;0) правильно, а в при подключенном «Пакете ошыбка в том
со знака « функцию ексель какПопробуйте сами иIvanOK или x86-64 иРАБДЕНЬ между двумя датами,
Извлечь первый и последний день месяца из даты (Формулы/Formulas)
заданное число месяцев Excel 2013 и всех
О том как текущем месяце (например,Для определения последнего вторника месяца, который был
vitalife 2003 — нет
анализа» что удалил с= бы не распознает, убедитесь:
компьютерах под управлением
Возвращает дату в числовом
руководствуясь параметрами, указывающими вперед или назад последующих версиях. найти количество оставшихся 01/03/2011 – первый месяца:
8 месяцев назад
: Благодарю!IvanOK
Источник
Содержание
- Получить месяц из даты с помощью функции ТЕКСТ в Excel
- Функция “ВЫБОР”.
- Пользовательское форматирование.
- Сравнение функций ДНИ и ДНЕЙ360 в Excel
- Автоматизированный график дней рождений сотрудников в Excel
- Анализ дебиторской задолженности до текущей даты в Excel
- Какой день недели для последнего дня месяца?
- Как определить високосный год или нет в Excel?
- Как преобразовать название месяца в порядковый номер
- Синтаксис функции СЕГОДНЯ()
- Как определить последнее воскресенье мая месяца в Excel
- Способ 3: вычисление количества дней для использования в сложных формулах
- Способ 4: альтернативная формула
- Как записать месяц прописью?
Синтаксис будет следующий
ТЕКСТ(значение, формат)
Значение это ссылка на ячейку с датой
Формат — для получения месяцев необходимо использовать заглавную букву «М». Причем от ее количества будет зависеть формат отображения (Первая буква месяца, Полное название месяца, короткое название, в виде двойной цифры и одной цифры)
Наглядно это можно посмотреть на скриншоте.
Так например, чтобы получить месяц в формате «Январь, Февраль, Март», необходимо ввести «ММММ».
Формул будет выглядеть следующим образом.
=ТЕКСТ(A2;"ММММ")
После этого можно быстро посчитать сумму сделок по месяцам с помощью функции СУММЕСЛИ
Функция “ВЫБОР”.
Теперь предположим, что вы хотите получить произвольное название месяца или имя на другом языке вместо числа или обычного имени.
В этой ситуации вам поможет функция ВЫБОР и уже пройденная нами функция МЕСЯЦ. Построим формулу. Для этого нам необходимо указать пользовательское имя для всех 12 месяцев в функции и использовать функцию месяца, чтобы получить номер месяца из даты.
=ВЫБОР(МЕСЯЦ(A1);”Январь”;”Фев”;”Март”;”Апр”;”Май”;”Июнь”;”Июль”;”Авг”;”Сен”;”Октябрь”;” Ноябрь”;”декабрь”)
Таким образом, когда функция месяца возвращает номер месяца от даты, функция выбора будет возвращать произвольное имя месяца вместо этого числа.
Пользовательское форматирование.
Если вы не хотите использовать какой-либо из представленных выше способов, вы можете использовать простой метод преобразования даты в месяц путем применения пользовательского форматирования .
Что и как нужно сделать?
1. Выберите диапазон ячеек или столбца.
2. Нажмите сочетание клавиш Ctrl + 1.
3. От опции формата, перейдите к «все форматы.
4. Теперь в строке ввода «Тип» введите «ММ», «МММ» или «ММММММ».
Нажмите ОК.
ВАЖНО!
Поскольку значение является датой, то когда вы будете копировать и вставлять его в другое место в качестве значений, это будет опять прежняя первоначальная дата, а не текст. Если кто-то изменит формат, название месяца будет потеряно.
Сравнение функций ДНИ и ДНЕЙ360 в Excel
Пример 2. В банк сделан депозит на сумму 100000 рублей. Условия договора: ставка – 17%, дата оформления – 31.08.2012, капитализация – ежедневно. Определить, какая сумма была накоплена на текущий период. Найти отдельно искомые значения с использованием функций ДНИ и ДНЕЙ360. Имеются ли различия в полученных значениях?
Вид таблицы данных:
Для расчета суммы депозита с ежедневной капитализацией используется формула S=P*(1+%/N)*T, где P – начальная сумма, N – число дней в году, T – число дней между датой оформления и текущим моментом.
Для расчета первого и второго значений соответственно используем следующие формулы:
=B2*(1+(B3/365)*ДНИ(СЕГОДНЯ();B4))
=B2*(1+(B3/360)*ДНЕЙ360(B4;СЕГОДНЯ()))
Примечание:
В качестве знаменателя дроби используем число дней (360 и 365 соответственно) в зависимости от числа дней, учитываемых каждой из функций.
Как видно, разница в результатах незначительна, однако первую формулу следует использовать для более точных расчетов.
Автоматизированный график дней рождений сотрудников в Excel
Используя таблицу из первого примера добавить столбец, в котором будет отображаться количество дней до дня рождения каждого сотрудника. Если день рождения сотрудника сегодня – отображать соответствующую запись.
Исходная таблица:
Для вычислений используем следующую формулу:
Функция РАЗНДАТ вычисляет разницу двух указанных дат и представляет полученное значение в зависимости от вида третьего аргумента, используемого для форматирования результатов. Например, для получения количества лет используется символ “y”, соответствующий первой букве слова «year» (год), “d” – для расчета количества дней (days – дни).
Выражение ДАТА(ГОД(B3)+РАЗНДАТ(B3;СЕГОДНЯ();”y”)+1;МЕСЯЦ(B3);ДЕНЬ(B3)) определяет дату следующего дня рождения сотрудника. Таким образом функция РАЗНДАТ находит количество дней между датой на сегодняшний день и датой следующего дня рождения и возвращает количество дней (“d”).
Результаты вычислений для остальных сотрудников:
Для отображения записи о том, что день рождения сотрудника сегодня, используем следующую формулу:
Данная формула является немного модифицированным вариантом предыдущей формулы. В частности, выполняется проверка двух условий: И(МЕСЯЦ(B13)=МЕСЯЦ(СЕГОДНЯ());ДЕНЬ(СЕГОДНЯ())=ДЕНЬ(B13)), то есть, соответствуют ли номера месяцев и дней в дате рождения в сравнении с текущей датой. Если результат вычислений – ИСТИНА, будет возвращена текстовая строка «ДР», если ЛОЖЬ – производится расчет количества дней до следующего дня рождения.
Например, произведем расчет для сотрудника, у которого сегодня день рождения:
Анализ дебиторской задолженности до текущей даты в Excel
Предприятию был выставлен долг со следующими условиями:
- За каждый день просрочки начисляются штрафы по ставке 5% от текущей суммы долга плюс начисленные проценты в день.
- По истечению 20-дневного срока с момента первого начисления штрафа будет проведено слушание в суде, проценты начисляться не будут.
Необходимо ввести формулу, которая будет рассчитывать ежедневно актуальную сумму долга.
Исходная таблица данных:
Для расчета текущей задолженности используем формулу:
Данная формула является видоизмененным вариантом формулы для расчета доходности при известных начальной сумме и числа периодов капитализации:
В качестве показателя степени используется выражение ДНИ(СЕГОДНЯ();B4), которое определяет количество прошедших дней от даты выставления долга до сегодняшней даты.
Поскольку сумма задолженности будет расти на протяжении 20 дней, используем следующий вариант записи:
Таким образом, была добавлена проверка условия, прошло ли 20 и более дней с момента выставления долга. Если да, сумма долга будет фиксированной и рассчитана по формуле B2*СТЕПЕНЬ((1+B3);20).
Результат вычислений:
Какой день недели для последнего дня месяца?
На этом рисунке ниже показано, как вычислить день недели и дату последнего дня февраля для любого года:
Формула состоит из двух частей, разделенных соединяющим оператором амперсантом (&” – “&):
- В первой части функция ТЕКСТ преобразует числовое значение, которое возвращает функция ДАТА в формат даты. Он указано во втором аргументе функции – “дд.мм.гг”
- Во второй части функция ТЕКСТ определяет день недели для исходной даты в первом ее аргументе, с помощью формата ячеек “дддд” указанном во втором аргументе.
Как определить високосный год или нет в Excel?
Чтобы определить високосный год или нет в Excel существует множество решений. Вот несколько из них:
При работе с датами особую сложность предоставляет тот факт, что раз в 4-е года количество дней в году составляет 366, тогда как в обычных годах 365. Поэтому иногда приходится воспользоваться вышеописанными примерами и формулами для различных вычислений в Excel.
Как преобразовать название месяца в порядковый номер
Теперь будем преобразовывать обратно – имя месяца в соответствующий ему порядковый номер в году.
Пример1. Формула первая:
=МЕСЯЦ(ДАТАЗНАЧ(A2&”1″))
Значение Декабрь1 Excel автоматически преобразует в дату дек.01. Далее функция ДАТАЗНАЧ преобразует дату в число после с помощью функции МЕСЯЦ мы получаем порядковый номер в году для текущего названия месяца. По сути формулу можно упростить:
=МЕСЯЦ(A2&”1″)
Пример2. Формула вторая:
=ВПР(A2;$G$1:$H$12;2;0)
Пример3. Формула третья:
Наиболее оптимальным вариантом является лаконичная формула =МЕСЯЦ(A2&”1″). В ней не нужно резервировать названия месяцев и присваивать им соответственные порядковые номера. К тому же в ней используется всего лишь одна функция.
Синтаксис функции СЕГОДНЯ()
У функции СЕГОДНЯ() нет аргументов (их нет сегодня и вряд ли они появятся завтра
Как определить последнее воскресенье мая месяца в Excel
Пример 2. Использовать формулы, включающие функцию КОНМЕСЯЦА, для определения следующих значений:
- Каким днем недели является последний день мая месяца текущего года?
- Какой номер дня соответствует последнему воскресению мая месяца в текущем году?
Для будущей проверки результатов вычисления формул сразу уточним, что на момент написания данного урока на дворе шел 2019-й год.
Для нахождения последнего дня мая месяца для текущего года используем следующую формулу:
Функция ТЕКСТ используется для преобразования данных (вывода текстового представления дня недели). Функция ДЕНЬНЕД возвращает числовое значение дня недели (от 1 до 7). Функция КОНМЕСЯЦА вычисляет дату последнего дня текущего месяца (аргументы СЕГОДНЯ и 0 соответственно).
Результат вычислений:
Для нахождения дня, соответствующего последнему воскресению в мае месяце текущего года используем формулу:
Полученный результат:
Чтобы убедиться, что был получен корректный результат, используем формулу для проверки последнего понедельника мая месяца в текущем году. В ячейке B9 водим формулу:
Результат вычислений:
Способ 3: вычисление количества дней для использования в сложных формулах
В примерах выше мы показали, как выполнять вычисление количества дней в месяце по указанному календарному числу или автоматически по текущему месяцу с выводом результата в отдельную ячейку. Но нахождение данного значения может понадобиться и для вычисления других показателей. При этом расчет количества дней будет производиться внутри сложной формулы и не станет выводиться в отдельной ячейке. Посмотрим, как это сделать на примере.
Нам нужно сделать так, чтобы в ячейке отображалось то количество дней, которое осталось до конца текущего месяца. Как и в предыдущем способе, данный вариант действий не требует открытия Мастера функций. Вы можете просто вбить в ячейку следующее выражение:
=ДЕНЬ(КОНМЕСЯЦА(СЕГОДНЯ();0))-ДЕНЬ(СЕГОДНЯ())
После этого в указанной ячейке будет выводиться число дней до конца месяца. Каждый день результат будет автоматически обновляться, а с начала нового периода отсчет начнется заново. Получается своеобразный таймер обратного отсчета.
Как видим, указанная формула состоит из двух частей. Первая из них представляет собой уже знакомое нам выражение расчета числа дней в месяце:
=ДЕНЬ(КОНМЕСЯЦА(СЕГОДНЯ();0))
А вот во второй части производится вычитание из этого показателя сегодняшнего числа:
-ДЕНЬ(СЕГОДНЯ())
Таким образом, при выполнении данного расчета формула вычисления количества дней является составной частью более сложной формулы.
Способ 4: альтернативная формула
Но, к сожалению, у версий программы ранее Excel 2007 отсутствует оператор КОНМЕСЯЦА. Как же быть тем пользователям, которые применяют старые версии приложения? Для них такая возможность существует посредством другой формулы, которая более массивна, чем описываемая выше. Посмотрим, как рассчитать количество дней в месяце по заданному календарному числу с помощью этого варианта.
- Выделяем ячейку для вывода результата и переходим в окно аргументов оператора ДЕНЬ уже привычным для нас способом. Устанавливаем курсор в единственное поле этого окна и кликаем по перевернутому треугольнику слева от строки формул. Переходим в раздел «Другие функции…».
- В окне Мастера функций в группе «Дата и время» выделяем наименование «ДАТА» и жмем на кнопку «OK».
- Запускается окошко оператора ДАТА. Данная функция преобразует дату из обычного формата в числовое значение, которое и должен будет потом обработать оператор ДЕНЬ.
Открывшееся окно имеет три поля. В поле «День» можно сразу ввести число «1». Это будет неизменным действием для любой ситуации. А вот двумя другими полями придется заняться основательно.
Устанавливаем курсор в поле «Год». Далее переходим к выбору операторов через знакомый нам треугольник.
- Все в той же категории Мастера функций выделяем наименование «ГОД» и щелкаем по кнопке «OK».
- Запускается окно аргументов оператора ГОД. Он определяет год по указанному числу. В единственном поле окна «Дата в числовом формате» указываем ссылку на ячейку, содержащую исходную дату, для которой нужно определить количество дней. После этого не спешим щелкать по кнопке «OK», а кликаем по наименованию «ДАТА» в строке формул.
- Затем мы опять возвращается в окно аргументов ДАТА. Устанавливаем курсор в поле «Месяц» и переходим к выбору функций.
- В Мастере функций щелкаем по наименованию «МЕСЯЦ» и жмем на кнопку «OK».
- Запускается окно аргументов функции МЕСЯЦ. Её задачи схожи с предыдущим оператором, только она выводит значение номера месяца. В единственное поле данного окна устанавливаем ту же самую ссылку на исходное число. Затем в строке формул щелкаем по наименованию «ДЕНЬ».
- Возвращаемся в окно аргументов ДЕНЬ. Тут нам предстоит сделать всего один небольшой штрих. В единственное поле окна, в котором уже находятся данные, добавляем в конец формулы выражение «-1» без кавычек, а также ставим «+1» после оператора МЕСЯЦ. После этого кликаем по кнопке «OK».
- Как видим, в предварительно выделенной ячейке отобразилось количество дней в месяце, к которому принадлежит указанное число. Общая формула имеет такой вид:
=ДЕНЬ(ДАТА(ГОД(D3);МЕСЯЦ(D3)+1;1)-1)
Секрет этой формулы прост. Мы с помощью неё определяем дату первого дня следующего периода, а потом отнимаем от неё один день, получая количество дней в указанном месяце. Переменной величиной в этой формуле является ссылка на ячейку D3 в двух местах. Если её заменить на адрес той ячейки, в которой находится дата в вашем конкретном случае, то можно просто вбить данное выражение в любой элемент листа без помощи Мастера функций.
Как записать месяц прописью?
Как и в примере выше воспользуемся функцией ТЕКСТ. Формат «ММММ» даст нам полную запись месяца (в именительном падеже):
Ещё одним способом является совместное применение функций МЕСЯЦ (в английской версии MONTH) и ВЫБОР (английский вариант CHOOSE).
Месяц вернёт нам порядковый номер месяца указанной даты (от 1 до 12), а ВЫБОР сопоставит числовому значению текстовое (где 1 — январь, 2 — февраль, …, 12 — декабрь):
Если же мы пишем число с месяцем и годом, то зачастую месяц нужно указать в родительном падеже (а не в именительном как в примере выше), например, 2 февраля 2015 года или 14 августа 2012 года и т.п.
Здесь нам опять поможет формат [$-FC19]ММММ, который записывает месяц в дате в родительном падеже, отличие от предыдущего варианта записи только в том, что мы убрали из записи день и год:
Есть и альтернативный вариант. На помощь опять придут уже знакомые функции МЕСЯЦ и ВЫБОР, только тут вместо именительного падежа для месяцев прописываем родительный (меняем окончания):
Источники
- https://sirexcel.ru/priemi-excel/data-i-vremya/kak-v-excel-poluchit-mesyac-iz-daty/
- https://zen.yandex.ru/media/id/5a25282b7800192677cc044f/5dea1b66e4fff000adb66297
- https://exceltable.com/funkcii-excel/funkciya-dney360
- https://exceltable.com/funkcii-excel/primery-raboty-funkcii-segodnya
- https://exceltable.com/formuly/posledniy-den-mesyaca
- https://exceltable.com/funkcii-excel/nazvanie-mesyaca-v-nomer
- https://excel2.ru/articles/funkciya-segodnya-v-ms-excel-segodnya
- https://exceltable.com/funkcii-excel/posledniy-den-mesyaca-konmesyaca
- https://lumpics.ru/formula-for-number-of-days-in-month-in-excel/
- https://tutorexcel.ru/tekst/data-i-mesyac-propisyu-v-excel/
Функция КОНМЕСЯЦА в Excel предназначена для определения числа, соответствующего номеру последнего дня в месяце, который отстоит на определенное число месяцев относительно даты, указанной как точка отсчета в виде первого аргумента этой функции.
Как получить последний день месяца по дате в Excel
Поскольку каждый из месяцев года имеет определенное число дней (30 или 31), данная функция полезна для быстрого нахождения номера числа любого месяца. Единственным исключением является февраль – 28 дней. Однако, раз в 4 года этот месяц имеет 29 дней (если год високосный).
Пример 1. Вывести количество дней в каждом месяце 2019 года в отдельный столбец таблицы.
Вид таблицы данных:
Для расчета числа дней используем следующую формулу массива, предварительно выделив ячейки B2:B13:
В качестве даты как точки отсчета была указана 01.01.2019 (первый день текущего года). Для расчета числа дней первого и последующих месяцев была вычтена 1 (если второй аргумент функции КОНМЕСЯЦА принимает значение 0, определяется число дней текущего месяца). Функция ТЕКСТ используется для преобразования полученного значения и вывода только числа дней (формат «ДД»).
Результаты вычислений:
Важный момент! Чтобы выполнять арифметические операции со значениями, которые возвращает данная формула следует использовать функцию ЗНАЧЕН. Она позволит преобразовать текст в числовое значение:
На этот раз мы использовали формулу массива, которую следует вводить через комбинацию клавиш CTRL+SHIFT+Enter для подверженная. Таким образом перед суммированием функцией СУММ значение из каждой ячейки преобразуется в число с помощью функции ЗНАЧЕН.
Как определить последнее воскресенье мая месяца в Excel
Пример 2. Использовать формулы, включающие функцию КОНМЕСЯЦА, для определения следующих значений:
- Каким днем недели является последний день мая месяца текущего года?
- Какой номер дня соответствует последнему воскресению мая месяца в текущем году?
Для будущей проверки результатов вычисления формул сразу уточним, что на момент написания данного урока на дворе шел 2019-й год.
Для нахождения последнего дня мая месяца для текущего года используем следующую формулу:
Функция ТЕКСТ используется для преобразования данных (вывода текстового представления дня недели). Функция ДЕНЬНЕД возвращает числовое значение дня недели (от 1 до 7). Функция КОНМЕСЯЦА вычисляет дату последнего дня текущего месяца (аргументы СЕГОДНЯ и 0 соответственно).
Результат вычислений:
Для нахождения дня, соответствующего последнему воскресению в мае месяце текущего года используем формулу:
Полученный результат:
Чтобы убедиться, что был получен корректный результат, используем формулу для проверки последнего понедельника мая месяца в текущем году. В ячейке B9 водим формулу:
Результат вычислений:
Правила использования функции КОНМЕСЯЦА в Excel
Функция имеет следующий синтаксис:
=КОНМЕСЯЦА(нач_дата;число_месяцев)
Описание аргументов:
- нач_дата – обязательный, принимает значения формата Дата, используемые как точка отсчета, относительно которой будет найден месяц, для которого требуется определить номер последнего дня;
- число_месяцев – обязательный, принимает числовое значение, характеризующее количество месяцев, которые требуется прибавить или вычесть, чтобы найти месяц, для которого определяется номер последнего дня.
Примечания:
- В качестве аргумента нач_дата вводят данные, являющиеся результатом вычислений функций, работающих с датами (например, =ДАТА(2019;06;12). Вводить даты как текст не рекомендуется, поскольку это может привести к возникновению ошибок. Например, не следует указывать даты следующим способом — =КОНМЕСЯЦА(“12.06.2019”;3).
- Если в качестве аргумента число_месяцев указано дробное число, функция КОНМЕСЯЦА усекает дробную часть. Например, =КОНМЕСЯЦА(СЕГОДНЯ();1,89) и КОНМЕСЯЦА(СЕГОДНЯ();1) выполнятся, вернув одинаковый результат.
- Если первый аргумент рассматриваемой функции принимает значение, которое не может быть преобразовано к формату данных Дата, результатом выполнения будет код ошибки #ЗНАЧ!. Аналогичная ошибка возникнет, если второй аргумент указан не преобразуемыми к числовому значению данными. Промежуточные преобразования не выполняются даже над данными логического типа. Например, =КОНМЕСЯЦА(СЕГОДНЯ;ИСТИНА) выполнится с ошибкой.
- Аргумент число_месяцев может принимать следующие числовые данные:
- a. Из диапазона отрицательных значений – определение месяца из прошедших дат (например, =КОНМЕСЯЦА(СЕГОДНЯ();-3) – определение числа дней в месяце, который отстоит на 3 месяца от текущего);
- b. Из диапазона положительных значений – последующие даты;
- c. 0 – текущий месяц.
Перейти к содержанию
На чтение 1 мин Опубликовано 22.07.2015
Чтобы получить дату последнего дня месяца в Excel, используйте функцию EOMONTH (End of Month). В русской версии – КОНМЕСЯЦА (конец месяца).
- Для примера попробуем получить дату последнего дня текущего месяца.
=EOMONTH(A1,0)
=КОНМЕСЯЦА(A1;0)
Примечание: функция EOMONTH (КОНМЕСЯЦА) возвращает порядковый номер даты. Примените формат даты для правильного отображения.
- Теперь попытаемся вычислить дату последнего дня следующего месяца.
=EOMONTH(A1,1)
=КОНМЕСЯЦА(A1;1)
- Мы даже можем рассчитать дату последнего дня месяца, который был 8 месяцев назад по формуле ниже:
=EOMONTH(A1,-8)
=КОНМЕСЯЦА(A1;-8)
Примечание: Вычисления происходят примерно так: = 6 — 8 = -2 или -2 + 12 = 10, т.е. получается октябрь 2011 года.
Оцените качество статьи. Нам важно ваше мнение:
Как вычислить последний день месяца в Excel
Смотрите также: 2003 эта функция той частью =», что в Excel, когда делаю F2IvanOKКазанский Windows RT с
- формате, отстоящую вперед выходные дни и от начальной даты.
Функция
дней до конца
вторник), приведено в=КОНМЕСЯЦА($A2;0)-ОСТАТ(КОНМЕСЯЦА($A2;0) по формуле ниже:Чтобы получить дату последнегоSerge 007 используется только кириллицей,а вы все
- что в VBA потоп enter все: ето реальный пример
,
архитектурой ARM. Подробнее
- или назад на их количество.КОНМЕСЯЦАОписание года можно в
статье Первый вторник
+4
=EOMONTH(A1,-8) дня месяца в,ну вы согласны с поэтому будет работать таки попробуйте тоСмотрите видео, так стает на всои с кода который
cells(i,1).FormulaR1C1 = «(КОНМЕСЯЦА(RC[-3],0))»вот об этих различиях.
заданное количество рабочих
ТДАТА
Возвращает дату в числовом
office-guru.ru
Последний вторник месяца в MS EXCEL
ДАТА этой статье. месяца (обратная задача).
;7)=КОНМЕСЯЦА(A1;-8) Excel, используйте функцию тем что даже на русском языке, что я писал
будет понятнее места…вот в чем работает и дает
часть формулы, ноIvanOK
дней.Возвращает текущую дату и формате для последнего
Возвращает заданную дату вФормула =»Осталось «&КОНМЕСЯЦА(A1;0)-A1&» дней до
Найдем количество дней, оставшихсяДля определения последней пятницыПримечание:
EOMONTH на вашем примере а в 2007/2010 и все пойметеhttp://youtu.be/5ghjY0V39fk
проблема… нормальный результат в все ошыбки именно: я програмно заполняюРАБДЕНЬ.МЕЖД время в числовом дня месяца, отстоящего числовом формате. конца «&ТЕКСТ(A1;»[$-FC19]ММММ») позволяет до конца месяца.
месяца:Вычисления происходят примерно(End of Month). есть етот косяк — это ужевы мне подалиIvanOKи ето в 2003, проблема возникла из-за етой функции,
excel2.ru
Сколько осталось дней до конца месяца в MS EXCEL
формулы конмесяца иВозвращает числовое значение даты,
формате. вперед или назадРАЗНДАТ вывести фразу «ОсталосьЕсли требуется найти сколько=КОНМЕСЯЦА($A2;0)-ОСТАТ(КОНМЕСЯЦА($A2;0)
так: = 6
В русской версииvitalife встроенная функция, поэтому хорошую идею, в: = есть, попробуйте 2010
в 2010 саму причину проблеми он выбивает #имя, предшествующей заданному количествуСЕКУНДЫ на заданное числоВычисляет количество дней, месяцев
26 дней до
осталось дней до+1
— 8 = –: Добрый день. если ее прописываем ексель 2003 я
для себя наДобавлено через 52 минутыпротестировал в 2003, понять не могу но когда при рабочих дней илиПреобразует дату в числовом
месяцев. или лет между конца августа». Название конца месяца начиная
excel2.ru
Функции даты и времени (справка)
;7) -2 или -2КОНМЕСЯЦАПодскажите, как из
через .Formula или етого не замечал, и так ипроблема решена с работает и так почему так нажатии клавиши F2 следующей за ними, формате в секунды.ЧАС двумя датами. Эта месяца склоняется! см.
с текущей даты, |
В файле примера приведена |
+ 12 = |
(конец месяца). даты извлечь первый |
.FormulaR1C1, то нужно |
а вот 2010 так, разных офисах помощю вашего совета и етак….к 2010ето все работает….проверено |
и потом enter |
руководствуясь при этомВРЕМЯ |
Преобразует дату в числовом |
функция полезна в файл примера. то нужно записать |
универсальная формула для |
10, т.е. получаетсяДля примера попробуем получить |
и последний день |
писать на английском, с етим проблема и вы меня |
а вообще то |
еще не тестил….Serge 007 ошыбка прекрасно исчезает… параметрами, указывающими выходныеВозвращает заданное время в |
формате в часы. |
формулах расчета возраста.О форматировании дат читайте формулу нахождения нужного дня октябрь 2011 года. дату последнего дня |
месяца. |
либо все писатьSerge 007 |
поймете) |
2003 понимает иВсе имена заняты: Вместо |
то есть формула |
дни и их числовом формате. |
НОМНЕДЕЛИ.ISO |
ДАТАЗНАЧ в статье Пользовательский формат |
=КОНМЕСЯЦА(СЕГОДНЯ();0)-СЕГОДНЯ() |
по порядковому номеруУрок подготовлен для Вас текущего месяца. |
Например, есть дата: |
на русском, но, ну даже наSerge 007 так и етак…: А то, что»(КОНМЕСЯЦА(RC[-3],0))» |
считается нормально, в |
количество.ВРЕМЗНАЧВозвращает номер недели по |
Преобразует дату из текстового |
ДАТЫ и ВРЕМЕНИВ формуле предполагается, что |
дня недели. |
командой сайта office-guru.ru=EOMONTH(A1,0) |
15.06.2017 г. |
через .FormulaLocal вашем видео показано |
: Ткните пальцем где |
Serge 007 идет обращение к |
пишите |
чем проблема, етоГОДПреобразует время из текстового |
ISO для заданной |
формата в числовой. в MS EXCEL. если насупил последнийВ качестве аргументов формулыИсточник: http://www.excel-easy.com/examples/last-day-of-the-month.html |
=КОНМЕСЯЦА(A1;0) |
Нужно из нееSerge 007 что 2003 на есть «=» в: |
третьему с конца |
»=EOMONTH(RC[-3],0)» все в офисеПреобразует дату в числовом формата в числовой. даты.ДЕНЬЧтобы просмотреть более подробные день месяца, то |
задаются: порядковый номер |
Перевел: Антон АндроновПримечание |
извлечь в одну |
: Ну наконец-то! А русском выдает нормально, Вашей записи ВыIvanOK |
столбцу — этоIvanOK 2010 хотя в формате в год.СЕГОДНЯМИНУТЫПреобразует дату в числовом сведения о функции, целых дней уже дня недели, деньАвтор: Антон Андронов: функция
support.office.com
Вычисление функции конмесяца в ексель 2010
ячейку B2 дату: то всё утверждаете а на 2010 видео смотрели? Специально, не путайте форумчан так и задумано?: 2003 етой проблемыДОЛЯГОДАВозвращает текущую дату вПреобразует дату в числовом формате в день щелкните ее название не осталось в недели, месяц и
Определим последний вторник месяца,EOMONTH 01.06.2017 г., в что работает нет…. вот и для Вас снял,Вот это:
IvanOKSerge 007 нет вообще
Возвращает долю года, которую числовом формате. формате в минуты. месяца.
в первом столбце. этом месяце. год. Универсальная формула последнюю пятницу или(КОНМЕСЯЦА) возвращает порядковый ячейку B3 дату:Вот это-то и
вся проблема
что бы Вы»(КОНМЕСЯЦА(RC[-3],0))»
:
, хорошо почему тогда
alx74
составляет количество днейДЕНЬНЕДМЕСЯЦДНИПримечание:Если требуется найти сколько
представляет собой комбинацию последнюю среду.
номер даты. Примените 30.06.2017 г. интересно, что заm-ch ерунду не писали
НЕ БУДЕТ работатьВсе имена заняты
в 2003 работает: Может с F9 между начальной иПреобразует дату в числовомПреобразует дату в числовомВозвращает количество дней между Маркер версии обозначает версию
осталось дней до двух вышеуказанных формулПусть в ячейке формат даты для
Файл во вложении. косяк в 2003,: Будет работать либоЕсли У Вас НИ В ОДНОЙ, не важно куда
без вяких проблем связано (автоматический пересчет конечной датами. формате в день формате в месяцы. двумя датами. Excel, в которой конца месяца от (файл примера размещенА2 правильного отображения.Заранее спасибо. что FormulaR1C1 принимается так, либо по работает — так версии Excel по оно обращается проблемаSerge 007
формул)? Если попробоватьВажно:
недели.
ЧИСТРАБДНИДНЕЙ360
она впервые появилась. произвольной даты, расположенной в статье Первый
может находится дата.Теперь попытаемся вычислить дату_Boroda_ на локальном языке?
другому (проверил только продемонстрируйте это причине того что в другом…. при: Это вряд ли не F2 и Вычисляемые результаты формул иНОМНЕДЕЛИВозвращает количество полных рабочихВычисляет количество дней между В более ранних в ячейке вторник месяца). Для определения последнего последнего дня следующего
: начТакого быть не
что в 2003
IvanOK это НЕ ФОРМУЛА, внесении формулы вВ таком виде, Enter, а F9 некоторые функции листаПреобразует дату в числовом
дней между двумя двумя датами на версиях эта функцияА1Решение обратной задачи: если понедельника месяца можно месяца.=B1-ДЕНЬ(B1)+1
должно (необходимо использовать и в 2007):
а текст. Для ячейку не делаеться как Вы выложили, нажать. Excel могут несколько формате в число, датами. основе 360-дневного года.
отсутствует. Например, маркер, то используйте формулу: дана дата, а использовать формулу:
=EOMONTH(A1,1)илиКод=КОНМЕСЯЦА(B1;-1)+1илиКод=—ТЕКСТ(B1;»1.М.г»)А последняя и FormulaLocal), однако фактфункция КОНМЕСЯЦА() вSerge 007 того что бы
расчет, а выдает код не будетКазанский отличаться на компьютерах которое указывает, наЧИСТРАБДНИ.МЕЖДДАТАМЕС версии 2013 означает,
=КОНМЕСЯЦА(A1;0)-A1 нужно определить, какой=КОНМЕСЯЦА($A2;0)-ОСТАТ(КОНМЕСЯЦА($A2;0)=КОНМЕСЯЦА(A1;1) так, без единички, налицо. Так что
2003 офисе изначально, я часть формулы выражение стало формулой? ошыбку #имя, проблема работать в принципе,
: Покажите код. Возможно, под управлением Windows какую неделю годаВозвращает количество полных рабочихВозвращает дату в числовом что данная функцияСОВЕТ по счету это+5Мы даже можем рассчитать получитсяКод=—ТЕКСТ(B1;»М.г») в 2010 работает отсутствует, работает только показал и моя оно обязано начинаться
в том что в любой версии FormulaLocal вместо Formula. с архитектурой x86
приходится дата. дней в интервале формате, отстоящую на доступна в выпуске:
день недели в;7) дату последнего дняконКод=КОНМЕСЯЦА(B1;0) правильно, а в при подключенном «Пакете ошыбка в том
со знака « функцию ексель какПопробуйте сами иIvanOK или x86-64 иРАБДЕНЬ между двумя датами,
CyberForum.ru
Извлечь первый и последний день месяца из даты (Формулы/Formulas)
заданное число месяцев Excel 2013 и всех
О том как текущем месяце (например,Для определения последнего вторника месяца, который был
vitalife 2003 — нет
анализа» что удалил с= бы не распознает, убедитесь:
компьютерах под управлением
Возвращает дату в числовом
руководствуясь параметрами, указывающими вперед или назад последующих версиях.
найти количество оставшихся 01/03/2011 – первый месяца:
8 месяцев назад
: Благодарю!IvanOK
excelworld.ru
В «Пакете анализа»
Хитрости »
23 Октябрь 2017 10921 просмотров
Проблема получения последнего дня месяца довольно распространена и очень просто решается. Начиная с Excel 2007 можно без всяких доп.манипуляций использовать функцию КОНМЕСЯЦА(EOMONTH):
=КОНМЕСЯЦА(ТДАТА();0)
=EOMONTH(NOW(),0)
ТДАТА(NOW) — возвращает текущую дату. Вместо неё можно указать любую дату и последняя дата месяца будет возвращена для указанной даты.
Для версий 2003 и ранее для использования КОНМЕСЯЦА(EOMONTH) необходимо для начала подключить надстройку Пакет анализа или же использовать чуть менее понятную формулу:
=ДАТА(ГОД(ТДАТА());МЕСЯЦ(ТДАТА())+1;0)
=DATE(YEAR(NOW()),MONTH(NOW())+1,0)
На самом деле данная формула проста, если разобраться детальнее. Функция ДАТА записывает в ячейку дату, на основании указанного года, месяца и дня. Мы для года берем год от текущей даты, далее берем месяц текущей даты и к месяцу прибавляем 1, чтобы получить следующий месяц. А потом для дня указываем 0, что заставляет Excel сдвинуть первую дату следующего месяца на один день назад. Таким образом и получается последняя дата месяца. Пошагово это выглядит так(если считать, что сегодня «22.10.2017»):
=ДАТА(ГОД(ТДАТА());МЕСЯЦ(ТДАТА())+1;0) =>
=ДАТА(ГОД(«22.10.2017»);МЕСЯЦ(«22.10.2017»)+1;0) =>
=ДАТА(2017;10+1;0) =>
=ДАТА(2017;11;0) здесь уже получится 01.11.2017, но 0 в качестве дня заставляет вернуться на день назад =>
=31.10.2017
Но есть более сложная проблема — получить дату последнего рабочего дня месяца. А это уже не так просто. Встроенных функций(вроде КОНМЕСЯЦА) для этого в Excel нет. А это значит опять придется танцевать с бубном.
Сразу возникает вопрос: а зачем это вообще может потребоваться? Например, для поиска счетов, отгрузка по которым производилась в последний рабочий день месяца, а оплаты(или документы на отгрузку) по некоторым пришли только в начале следующего. Так же такую функцию будет удобно применять для автоматического формирования платежек или накладных, если они должны быть оформлены именно последним рабочим днем месяца.
Чтобы получить именно корректную дату следует так же учесть и тот факт, что есть дни праздничные. И их тоже надо как-то учесть. Для этого я буду использовать отдельный лист Праздники, в столбце А которого записаны праздничные дни на пару лет. Также в этом диапазоне перечислены и все выходные. Сделано для более корректного подсчета дат, т.к. праздники могут быть перенесены, в результате чего рабочими становятся субботы или воскресенья. Если их не учитывать, то расчет будет неверным.
Из спортивного интереса создать такую функцию решил тремя способами:
- При помощи стандартных функций Excel
- При помощи функции пользователя на VBA
- При помощи PowerQuery
Последний рабочий день при помощи стандартных функций Excel
В ходе некоторых экспериментов и манипуляций появилась такая формула:
=РАБДЕНЬ(
ЕСЛИ(ДЕНЬНЕД(КОНМЕСЯЦА(B4;0);2)<6; КОНМЕСЯЦА(B4;0);
КОНМЕСЯЦА(B4;0)-(ДЕНЬНЕД(КОНМЕСЯЦА(B4;0);2)-5));
0; Праздники!$A$2:$A$827)
=WORKDAY(
IF(WEEKDAY(EOMONTH(B4,0),2)<6, EOMONTH(B4,0),
EOMONTH(B4,0)-(WEEKDAY(EOMONTH(B4,0),2)-5)),
0,Праздники!$A$2:$A$827)
где Праздники!$A$2:$A$827 — ссылка на диапазон дат с праздниками
Здесь я так же использую КОНМЕСЯЦА для быстрого определения последней даты месяца.
Функция ДЕНЬНЕД(WEEKDAY) возвращает номер дня недели для указанной даты и нужна для того, чтобы определить — является последний день недели субботой или воскресеньем. Если нет, то возвращаем дату как есть, если это суббота или воскресенье — то отнимаем от даты либо 1 день, либо 2(если это СБ — то 1, если ВСК — то 2).
И только после этого применяем к полученной дате функцию РАБДЕНЬ(WORKDAY), которая для последней даты месяца определяет, является ли она праздничной(на основании списка праздников Праздники!$A$2:$A$827). Если дата праздничная — то она уменьшается до тех пор, пока не достигнет рабочего дня. РАБДЕНЬ не принимает в расчет выходные, поэтому нам и нужны функции ЕСЛИ и ДЕНЬНЕД, прежде чем применить РАБДЕНЬ.
Однако сразу хочу оговорить, что в конкретно моем случае вычисление выходных дней при помощи ЕСЛИ и ДЕНЬНЕД несколько избыточно, т.к. в диапазоне с праздниками помимо непосредственно праздников у меня уже учтены все выходные дни. Т.е. по сути формула могла бы быть намного проще:
=РАБДЕНЬ(КОНМЕСЯЦА(B4;0); 0; Праздники!$A$2:$A$827)
=WORKDAY(EOMONTH(B4,0), 0, Праздники!$A$2:$A$827)
Но я все равно решил именно в статье привести формулу, которая смотрит и на дни недели, т.к. требования могут быть разными.
Т.к. Microsoft все же немного заботится о нас, то для пользователей версий Excel 2010 и более новых, в случае необходимости учитывать день недели прямо в формуле, можно использовать функцию РАБДЕНЬ.МЕЖД:
=РАБДЕНЬ.МЕЖД(КОНМЕСЯЦА(B4;0);0;1;Праздники!$A$2:$A$827)
=WORKDAY.INTL(EOMONTH(B4,0),0,1,Праздники!$A$2:$A$827)
РАБДЕНЬ.МЕЖД[дата; кол-во дней; выходные; праздники]
дата — дата, от которой необходимо отсчитать указанное кол-во дней
кол-во дней — количество дней, которые надо прибавить или отнять(отриц. число — отнимает дни от даты) от указанной даты
выходные — 1 = Суббота и Воскресенье, 2 — Воскресенье и Понедельник и т.д. Полный перечень есть в справке для функции и в выпадающей подсказке к функции при вводе.
праздники — ссылка на диапазон дат с праздниками
Достаточно указать последнюю дату месяца, указать для неё сдвиг на 0 дней, указать тип выходных и ссылку на диапазон дат с праздниками. Все уже сделано и все гораздо проще.
Последний рабочий день при помощи функции пользователя на VBA
Если использование VBA не является для вас проблемой, то можно применить функцию пользователя(UDF) для расчета последнего рабочего дня:
'--------------------------------------------------------------------------------------- ' Author : The_Prist(Щербаков Дмитрий) ' Профессиональная разработка приложений для MS Office любой сложности ' Проведение тренингов по MS Excel ' http://www.excel-vba.ru ' WebMoney - R298726502453; Яндекс.Деньги - 41001332272872 ' Purpose: Функция получения последнего рабочего дня на основании указанной даты и списка праздников '--------------------------------------------------------------------------------------- Option Explicit Function ПоследнийРабочийДень(Дата As Date, Optional Праздники As Range = Nothing, Optional СистемныеВыходные As Boolean = False) Dim dd As Date, dres As Date Dim lWeekDay As Long dres = DateSerial(Year(Дата), Month(Дата) + 1, 0) If СистемныеВыходные Then lWeekDay = Weekday(dres, vbUseSystemDayOfWeek) If lWeekDay < 6 Then dres = dres Else dres = dres - (lWeekDay - 5) End If End If Do While (IsHoliday(dres, Праздники)) dres = dres - 1 Loop ПоследнийРабочийДень = dres End Function 'Функция поиска указанной даты среди праздничных дат ' dd - искомая дата ' Holidays - диапазон с праздничными днями Function IsHoliday(ByVal dd As Date, Optional Holidays As Range = Nothing) Dim lWeekDay As Long Dim x, rr As Range If Holidays Is Nothing Then Exit Function For Each x In Holidays.Value If IsDate(x) Then If CDate(x) = dd Then IsHoliday = True Exit Function End If End If Next End Function
Чтобы правильно использовать приведенный код, необходимо сначала ознакомиться со статьей Что такое функция пользователя(UDF)?. Вкратце: скопировать текст кода выше, перейти в редактор VBA(Alt+F11) -создать стандартный модуль(Insert —Module) и в него вставить скопированный текст. После чего функцию можно будет вызвать из Диспетчера функций(Ctrl+F3), отыскав её в категории Определенные пользователем (User Defined Functions).
Синтаксис функции:
=ПоследнийРабочийДень(B4;Праздники!$A$2:$A$827;0)
- Дата(B4) — непосредственно дата или ссылка на ячейку с датой, последней рабочий день для которой необходимо вычислить. Будет рассчитан последний рабочий день для месяца указанной даты.
- Праздники() — ссылка на диапазон ячеек, содержащих даты праздничных дней.
- СистемныеВыходные(0) — ИСТИНА(TRUE или 1) или ЛОЖЬ(FALSE или 0). Если указано как ЛОЖЬ, то при вычислении последнего рабочего дня не будут учитываться выходные. В этом случае они обязательно должны быть перечислены в списке Праздники. Если они не перечислены — то все дни недели считаются рабочими, кроме праздников. Если указано как ИСТИНА, то в качестве выходных будут применены те дни, которые установлены для календаря в операционной системе. Для русской локализации это как правило Суббота и Воскресенье.
Последний рабочий день при помощи PowerQuery
Самый экзотический метод. Если еще не знаете что такое PowerQuery — Power Query — что такое и почему её необходимо использовать в работе?.
Для начала необходимо загрузить список праздников.
Если список праздников еще не преобразован в умную таблицу, то на листе Праздники выделяем все ячейки с датами -переходим на вкладку Вставка(Insert) –Таблица(Table). Снимаем галку с пункта «Таблица с заголовками» —Ок:
Выделяем любую ячейку в созданной таблице праздников -переходим на вкладку Данные(Data или Power Query) и выбираем Из таблицы(From Table).
Нажимаем в заголовке на значок календаря и в выпадающем списке выбираем тип Дата:
В правой части окна редактора изменяем название запроса(скорее всего там Таблица1) на Праздники:
Переходим на вкладку Главная, раскрываем пункт Закрыть и загрузить и выбираем Закрыть и загрузить в…:
В появившемся окне выбираем Только создать подключение и нажимаем Ок:
Теперь переходим на вкладку Данные(Data) -Получить данные -Из других источников -Пустой запрос. Переходим в расширенный редактор(вкладка Главная —Расширенный редактор):
и вставляем туда следующий текст:
let
dNow = Date.From(DateTime.LocalNow()),
//dNow = Date.FromText(«2017-09-19»),
lastDay = Date.EndOfMonth(dNow),
WeekD = Date.DayOfWeek(lastDay,1),
dd = if WeekD < 5 then lastDay else Date.AddDays(lastDay,-(WeekD-4)),
//dd = dNow,
coun_dif = (value as date) as date =>
let
dAdd = value,
select_rows = Table.SelectRows(Праздники, each Record.Field(_, «Дата выходного дня») = dAdd),
count_rows = Table.RowCount(select_rows),
result = Date.AddDays(value,-count_rows)
in
result,
res_d = Table.FromValue(coun_dif(dd))
in
res_d
После этого можно на вкладке Главная нажать Закрыть и загрузить. Будет создан новый лист с одной ячейкой — датой последнего рабочего дня.
Чтобы приведенный запрос работал корректно, необходимо назвать столбец с праздничными датами «Дата выходного дня». Либо изменить это название в самом запросе.
Если нужен последний рабочий день на конкретную дату, то необходимо убрать первую строку(dNow = Date.From(DateTime.LocalNow()),) и убрать слеши вначале следующей строки:
let
dNow = Date.FromText(«2017-09-19»),
lastDay = Date.EndOfMonth(dNow),
WeekD = Date.DayOfWeek(lastDay,1),
dd = if WeekD < 5 then lastDay else Date.AddDays(lastDay,-(WeekD-4)),
//dd = Date.EndOfMonth(dNow),
coun_dif = (value as date) as date =>
let
dAdd = value,
select_rows = Table.SelectRows(Праздники, each Record.Field(_, «Дата выходного дня») = dAdd),
count_rows = Table.RowCount(select_rows),
result = Date.AddDays(value,-count_rows)
in
result,
res_d = Table.FromValue(coun_dif(dd))
in
res_d
Если выходные не надо учитывать(чтобы суббота и воскресенье не рассчитывались автоматом в зависимости от дня недели), то запрос будет выглядеть так:
let
dNow = Date.FromText(«2017-09-19»),
dd = Date.EndOfMonth(dNow),
coun_dif = (value as date) as date =>
let
dAdd = value,
select_rows = Table.SelectRows(Праздники, each Record.Field(_, «Дата выходного дня») = dAdd),
count_rows = Table.RowCount(select_rows),
result = Date.AddDays(value,-count_rows)
in
result,
res_d = Table.FromValue(coun_dif(dd))
in
res_d
Реализацию всех приведенных решений можно скачать в приложенном файле
Скачать файл:
ПоследнийРабочийДень.xlsm (50,7 KiB, 617 скачиваний)
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика
Функция
КОНМЕСЯЦА(
)
, английский вариант EOMONTH(),
возвращает последний день месяца. Формула
=КОНМЕСЯЦА(«15/01/2011»;0)
возвращает дату 31/01/2011
.
Синтаксис функции
КОНМЕСЯЦА
(
нач_дата
;
число_месяцев
)
Нач_дата
— дата определяющая месяц, последний день которого необходимо найти. Даты должны вводиться в поддерживаемом EXCEL формате (28/02/2011, 28 февраль 2011 и т.д.) или в
числовом формате
или как результат вычисления других формул или с использованием функции
ДАТА()
. Например, для указания даты 28.02.2011 следует воспользоваться выражением
ДАТА(2011;2;28)
.
Число_месяцев
— количество месяцев до или после даты
нач_дата
. Положительное значение аргумента
число_месяцев
означает будущие даты; отрицательное значение — прошедшие даты.
Примеры
Если в ячейке
А1
находится дата 28.03.2011 , то формула
=КОНМЕСЯЦА(A1;1)
вернет дату 30.04.2011,
=КОНМЕСЯЦА(A1;-2)
вернет дату 31.01.2011. Формула
=КОНМЕСЯЦА(СЕГОДНЯ();0)
вернет последний день текущего месяца.