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 |
Нужна дополнительная помощь?
Формулы для определения первого и последнего дней месяца от текущей или произвольной даты. Использовать можно в шаблонах различных документов и отчетов, при заполнении которых требуется отобразить интервал дат с участием первого и(или) последнего дня месяца.
Для формулы, преобразующей текущую или другую дату в первый день месяца, используем функции «ДАТА», «ГОД» и «МЕСЯЦ»:
- Первый день текущего месяца от текущей даты:
=ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());1)
- Первый день прошлого месяца от текущей даты:
=ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ())-1;1)
- Первый день текущего месяца предыдущего года от текущей даты:
=ДАТА(ГОД(СЕГОДНЯ())-1;МЕСЯЦ(СЕГОДНЯ());1)
- Первый день месяца от произвольной даты, записанной в ячейку «A1»:
=ДАТА(ГОД(A1);МЕСЯЦ(A1);1)
Определить первый день месяца можно не только для прошедших периодов, но и для будущих, прибавив соответствующее количество лет или месяцев в формулу.
Последний день месяца в Excel
Для определения последнего месяца от текущей или произвольной даты в Excel, начиная с версии 2007 года, существует функция «КОНМЕСЯЦА» с двумя аргументами: «Начальная дата» и «Количество месяцев». Если «Количество месяцев» равно 0, то будет возвращен последний день того месяца, который содержится в аргументе «Начальная дата».
Примеры для Excel 2007-2016:
- Последний день текущего месяца от текущей даты:
=КОНМЕСЯЦА(СЕГОДНЯ();0)
- Последний день прошлого месяца от текущей даты:
=КОНМЕСЯЦА(СЕГОДНЯ();-1)
- Последний день текущего месяца предыдущего года от текущей даты:
=КОНМЕСЯЦА(СЕГОДНЯ();-12)
- Последний день месяца от произвольной даты, записанной в ячейку «A1»:
=КОНМЕСЯЦА(A1;0)
Функция «КОНМЕСЯЦА» возвращает значение в числовом виде, поэтому для правильного отображения последнего дня месяца следует к ячейке с формулой применить формат даты.
В версиях Excel по 2003 год функция «КОНМЕСЯЦА» по-умолчанию отсутствует, поэтому будем применять формулу, составленную, как и для первого дня месяца, из функций «ДАТА», «ГОД» и «МЕСЯЦ».
Примеры для Excel 2000-2003:
- Последний день текущего месяца от текущей даты:
=ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ())+1;0)
- Последний день прошлого месяца от текущей даты:
=ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());0)
- Последний день текущего месяца предыдущего года от текущей даты:
=ДАТА(ГОД(СЕГОДНЯ())-1;МЕСЯЦ(СЕГОДНЯ())+1;0)
- Последний день месяца от произвольной даты, записанной в ячейку «A1»:
=ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;0)
Не перепутайте в этих формулах вычитаемое или добавляемое количество месяцев, так как для определения последнего дня месяца, содержащегося в исходной дате, приходится текущий месяц увеличивать на единицу, чтобы вернуться к последнему дню из следующего месяца, указав количество дней равное нулю.
Как вариант, для определения последнего дня месяца можно использовать формулу, возвращающую первый день следующего месяца, из значения которой вычитается единица: =ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;1)-1
Определение первого и последнего дня месяца имеет большую актуальность для автоматического заполнения интервала дат в диалоговых формах с помощью VBA Excel.
Часто в процессе работы с датами возникает необходимость динамического определения даты и последнего дня недели в месяце. Естественно можно просто посмотреть в обычный календарь, но для автоматизации некоторых задач в Excel с помощью формул нужно динамически получить дату последнего месяца особенно в феврале и определить день недели. Ведь у високосного года (366) месяц февраль имеет 29 дней, а в обычном году – 28.
Сколько дней в феврале для любого года и любой даты?
Для начала рассмотрим, как вычислить дату последнего дня февраля месяца для любого года, чтобы определить високосный год или нет:
Анализируя пример на данном рисунке, следует помнить, что данную формулу можно применять для любого месяца, чтобы получить дату последнего дня, а не только для февраля. Иначе она выглядела бы так:
=ДАТА(ГОД(A2);3;0)
Функция ДАТА позволяет генерировать дату на лету с помощью трех аргументов:
- Год – можно указать любое число только лишь в диапазоне от 1900 и до 9999.
- Месяц – любое положительное или отрицательное число.
- День – любое положительное или отрицательное число.
Например, если в третьем аргументе указано число 0 как номер дня, Excel вычислит дату последнего дня из предыдущего месяца. Для наглядного примера составим формулу с числом 0, которая возвращает 29 февраля 2000-го года:
=ДАТА(2000;3;0)
В следующем примере формулы вместо ввода статических значений в первые 2 аргумента функции ДАТА (год и месяц), используется функция ГОД, которая возвращает годы с исходных дат. Аналогично используется функция МЕСЯЦ возвращающая порядковый номер месяца в году из исходной даты. К этому номеру в формуле добавляется число 1. Благодаря чему мы получаем номер следующего месяца. Так как в третьем аргументе стоит число 0, автоматически получаем порядковый номер последнего дня в текущем месяце, который нас интересует.
Какой день недели для последнего дня месяца?
На этом рисунке ниже показано, как вычислить день недели и дату последнего дня февраля для любого года:
Формула состоит из двух частей, разделенных соединяющим оператором амперсантом (&» — «&):
- В первой части функция ТЕКСТ преобразует числовое значение, которое возвращает функция ДАТА в формат даты. Он указано во втором аргументе функции – «дд.мм.гг»
- Во второй части функция ТЕКСТ определяет день недели для исходной даты в первом ее аргументе, с помощью формата ячеек «дддд» указанном во втором аргументе.
Пример использования функции КОНМЕСЯЦА
В новых версиях Excel предусмотрена функция КОНМЕСЯЦА, которая служит альтернативным решением для выше описанной формулы:
Благодаря функции КОНМЕСЯЦА можно определять дату для текущего, предыдущего или будущего месяца заполнив лишь только 2 аргумента:
- Нач_дата – исходная дата или ссылка на нее.
- Число_месяцев – порядковый номер месяца начиная от исходной даты. Может быть любое положительное или отрицательное число. Примеры заполнения аргументов для функции КОНМЕСЯЦА, которая возвращает дату 29 февраля 2000-го года:
=КОНМЕСЯЦА(«01.01.2000»;1)
Если же мы укажем во втором аргументе отрицательное число, тогда функция возвращает нам дату последнего дня для предыдущего месяца:
=КОНМЕСЯЦА(«01.03.2000»;-1)
Разумеется, если мы указываем во втором аргументе число 0 тогда получим необходимое значение даты последнего дня для текущего месяца:
=КОНМЕСЯЦА(«01.02.2000»;0)
Как определить високосный год или нет в Excel?
Чтобы определить високосный год или нет в Excel существует множество решений. Вот несколько из них:
При работе с датами особую сложность предоставляет тот факт, что раз в 4-е года количество дней в году составляет 366, тогда как в обычных годах 365. Поэтому иногда приходится воспользоваться вышеописанными примерами и формулами для различных вычислений в Excel.
Последний день месяца в MS EXCEL
Смотрите такжеikkiyavorsky90
: ? вычисляет дату конца типу функции вКроме того, можно составить реализации данной функции. МЕСЯЦ в Excel: а только лишь
примерах ниже, вы
ДЕНЬ;
Доступна и обработкаПодскажите, как из и первый аргумент
excel2.ru
Первый день месяца в MS EXCEL
Определим дату, на которую=КОНМЕСЯЦА(A2;-1)+1Последний день месяца определяется: михаил, насколько я
: да, даты поikki месяца не зависимо Excel. гистограмму для анализаПример работы c функциями
текстовыми и числовыми
сможете наглядно увидеть
ДЕНЬНЕД. дат. При этом даты извлечь первый функции ДЕНЬНЕД() уменьшили приходится первый вторник=ДАТА(ГОД(A2);МЕСЯЦ(A2);1)
с помощью функции
понял, автору нужно порядку. И надо: yavorsky90, неужели за от А! иyavorsky90 самых продаваемых днейЭти примитивные функции очень ДЕНЬ и ДЕНЬНЕД. значениями. Чтобы отделить это. Важно помнить,Все они отображают числовые может возникнуть потребность
и последний день на 3, т.к.
месяца, вторую пятницу
Если КОНМЕСЯЦА(). немного другое -
excel2.ru
Первый вторник месяца в MS EXCEL
учитывать года. Вариант 150 постов на числа месяцев… какие: Здравствуйте, форумчане. У недели, понять на
полезны при группировки Функция ДЕНЬ получает год, месяц или что при отображении
значения, соответствующие григорианскому вычленения из общего месяца. пятница через 3 или третью среду
А2
Если ячейка проверка на пжоследнюю Nic70y как-то работает, форуме ни разу единички?
меня следующая проблема: какой день недели данных по: годам, вычислить из даты
день от полной даты в качестве календарю. Даже если значения конкретного числа,Например, есть дата: дня через вторника). месяца.содержит дату, а
А1 дату месяца из пробую понять как. не встречались сyavorsky90
есть в столбике приходится наибольшее количество месяцам, дням недели число любого дня: даты для этого
текста (автоматическая ориентация в таблице Excel например, года. Для 15.06.2017 г.В файле примера приведенаПусть в ячейкеB2содержит дату, то имеющихся в списке,ikki
excel2.ru
Извлечь первый и последний день месяца из даты (Формулы/Formulas)
выражением «формула массива»?: Мне надо, чтобы
А набор дат продаж: и конкретным дням.Функция ДЕНЬНЕД возвращает номер
в Excel предусмотрены по левому краю
для отображения введенной этого существует отдельныеНужно из нее универсальная формула дляА2число месяцев, то
последний день месяца,
а не в
: НЕ формула массива,я специально заключил в столбце В
за год, изВ таком виде оченьДопустим у нас имеется
дня недели (1-понедельник,
функции для работы ячейки), функция ГОД
excelworld.ru
Примеры функций для работы с датами: ГОД, МЕСЯЦ и ДЕНЬ в Excel
даты был выбран функции: ГОД, МЕСЯЦ, извлечь в одну нахождения нужного дняможет находится дата формула которому принадлежит эта календаре :) ввести в B2, формулу в фигурные стояли 1 если них надо найти удобно сегментировать отчеты
Примеры использования функций для обработки даты в Excel
простой отчет по 2-второник… и т.д.) с датами. не будет выполнена. календарь Хиджра, то ДЕНЬ и ДЕНЬНЕД. ячейку B2 дату: по порядковому номеру (см. файл примера).=ДАТА(ГОД(A2);МЕСЯЦ(A2)+B2;1) дата, определяется такyavorsky90 протянуть вниз скобки. в соответствующей строке
последнюю дату в по продажам за
- продажам:
- для любой даты:
- Пример: Есть таблица с
Ее результатом станет при вычленении годаТаблицы Excel хранят даты, 01.06.2017 г., в дня недели.Для определения первого вторникавернет первое число месяца, (см. файл примера):: Михаил, так не=—ИЛИ(МЕСЯЦ(A2)<>МЕСЯЦ(A3);ЕПУСТО(A3))вам их вводить А последняя существующая каждом месяце. длительные, средние и
Нам нужно быстро организоватьВо втором опциональном аргументе перечнем дат и отображение #ЗНАЧ. Поэтому и других составных
которые представлены в ячейку B3 дату:
В качестве аргументов формулы месяца, которому принадлежит отстоящего от исходного=КОНМЕСЯЦА(A1;0) получается, потому чтоyavorsky90 не надо. они дата месяца, иДелал вот так: короткие периоды времени. данные для визуального функции ДЕНЬНЕД следует в каждой из форматируемые даты должны значений посредством функций, качестве последовательности числовых 30.06.2017 г. задаются: порядковый номер дата в ячейке на число месяцевИли другой формулой: =ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;0) напротив 28.12.2007 тоже
: Спасибо огромное, все появятся сами - 0 — в =If(A1=Eomonth(A1;0);1;0). Но какСтоит сразу отметить что анализа без использования указать число 2 них необходимо отделить быть представлены в приложение представит число, значений. Начинается онаФайл во вложении. дня недели, деньА2 из ячейкиПервый день месяца определяется надо поставить 1 работает.
после того, как других случаях. прописать, чтобы формула для того чтобы сводных таблиц. Для
для нашего формата значение только года.
числовом варианте. Дни, которое является эквивалентом с 1 январяЗаранее спасибо.
недели, месяц и, можно использовать формулу:B2
в статье Первый (это последний существующийikki
вы завершите вводyavorsky90
ставила единицы если получить разницу между этого приведем отчет отсчета дня неделиВведем исходные данные в
месяцы и год по григорианской системе 1900 года. Этой_Boroda_
год.=$A2-ДЕНЬ($A2)+7-ДЕНЬНЕД($A2-ДЕНЬ($A2)-1;3)(т.е. если день месяца. в столбце день: должен заметить - формулы ctrl+shift+enter
: ikki ,что-то не в А1 не двумя датами нам в таблицу где (с понедельника-1 по Excel.
могут быть разделены летоисчисления. дате будет соответствовать
: начРешение обратной задачи: если
Для определения любого другого
Примеры практического применения функций для работы с датами
А2Первый день месяца можно месяца). последняя формула наврётпс. год формула
работает 31.12.2012, а 30.12.2012, не поможет ни
можно удобно и восркесенье-7):Для решения поставленной задачи, точкой, слешем илиЧтобы воспользоваться функцией ГОД, число 1. При=B1-ДЕНЬ(B1)+1 дана дата, а дня (третья среда,содержит 05/08/1999, а
определить с помощьюМихаил С. в случае, если не учитывает, ноФайл удален а 31.12.2012 нет одна из выше
быстро группировать данныеЕсли пропустить второй необязательный необходимо в ячейки запятой. нужно ввести в этом 1 январяилиКод=КОНМЕСЯЦА(B1;-1)+1илиКод=—ТЕКСТ(B1;»1.М.г»)А последняя и
нужно определить, какой четвертый четверг) вышеуказаннаяB2 функции ДАТА() или: Тогда вопрос должен
к примеру, следом вы этого и- велик размер совсем? То есть, описанных функций. Для по годам месяцам для заполнения аргумент, столбца B ввестиРассмотрим пример работы с ячейку следующую формулу
2009 года заложено так, без единички, по счету это формула должна быть– 3, то КОНМЕСЯЦА(). звучать примерно так:
exceltable.com
как найти последний существующий день месяца.
за ячейкой 20.05.2007 не просили :))) — [ чтобы формула ставила данной задачи следует и дням недели: тогда будет использоваться формулу: функцией ГОД в
функции с одним в таблицах, как получитсяКод=—ТЕКСТ(B1;»М.г») день недели в модифицирована. Например, результат будет =Если ячейка «Как найти максимальную будет ячейка 12.05.2008.ikkiМОДЕРАТОРЫ
1 напротив последнего воспользоваться специально предназначенной
Теперь у нас есть формат по умолчанию=ГОД (адрес ячейки, из Excel. Если нам аргументом: число 39813. ИменноконКод=КОНМЕСЯЦА(B1;0) текущем месяце (например,
Второй вторник: =$A2-ДЕНЬ($A2)+7-ДЕНЬНЕД($A2-ДЕНЬ($A2)-1;3) 01/11/1999).А2 дату каждого месяцаесли такая вероятность: пс. если, как] существующего дня месяца. функцией РАЗНДАТ:
инструмент для работы (английский с воскресенья-1 даты которой нужно
нужно получить год=ГОД(адрес ячейки с датой такое количество днейvitalife 01/03/2011 – первый
+7Тот же результат вернетсодержит дату, то из списка дат?»
есть — добавьте в вашем наконец-то
yavorsky90ikkiТип значений в ячейках с этим отчетом по суботу-7). вычленить значение года)
из исходной даты в числовом формате) между двумя обозначенными
: Благодарю! вторник), приведено в(просто добавили 7 формула нижеследующие формулы вернут=—(ИНДЕКС(A2:A33;ПОИСКПОЗ(КОНМЕСЯЦА(A2;0);A2:A33))=A2)
в формулу проверку появившемся примере, даты: Извините, вроде большой: {=—(МАКС(ЕСЛИ(МЕСЯЦ($A$1:$A$10)=МЕСЯЦ(A1);$A$1:$A$10))=A1)}
«дата» требует особого по продажам. МыСоздадим формулу из комбинацийВ результате мы извлекаем нам не поможетАргумент функции является обязательным датами.
В таблицах Excel предусмотрена статье Первый вторник дней);=КОНМЕСЯЦА(A2;B2-1)+1 первый день месяцаMCH
на год. расположены по порядку файл получился. ПрикрепляюМихаил С.
подхода при обработке
можем фильтровать и функций ИНДЕКС и года из каждой
функция ПРАВСИМВ так для заполнения. ОнФункция ГОД используется аналогично возможность работы с месяца (обратная задача).Третья пятница: =$A2-ДЕНЬ($A2)+7-ДЕНЬНЕД($A2-ДЕНЬ($A2)Последний день месяца определяется
этой даты (см.: Ну и отМихаил С. — формулу можно
меньший: непонятно, что вам
данных. Поэтому следует сегментировать данные по ДЕНЬНЕД: даты. как она не может быть заменен смежным: различными видами текстовойvitalife
-4+14 в статье Последний файл примера): меня несколько вариантов: =—(КОНМЕСЯЦА(A2;0)=A2) сделать гораздо проще.112347 нужно. Eomonth() корректно
использовать соответствующие данному определенным критериям времени:Получим более понятный видАналогичный пример работы функции работает с датами, на «дата_в_числовом_формате». В
МЕСЯЦ;
и числовой информации.: Добрый день.(добавили 14 дней
planetaexcel.ru
день месяца.
Содержание
- Excel последний день месяца
- Последний день месяца в MS EXCEL
- Первый день месяца в MS EXCEL
- Первый вторник месяца в MS EXCEL
- Извлечь первый и последний день месяца из даты (Формулы/Formulas)
- Примеры функций для работы с датами: ГОД, МЕСЯЦ и ДЕНЬ в Excel
- Примеры использования функций для обработки даты в Excel
- Примеры практического применения функций для работы с датами
- как найти последний существующий день месяца.
- Функция КОНМЕСЯЦА
- Описание
- Синтаксис
- Замечания
- Пример
- Как рассчитать последний день месяца в Excel
- Сколько дней в феврале для любого года и любой даты?
- Какой день недели для последнего дня месяца?
- Пример использования функции КОНМЕСЯЦА
- Как определить високосный год или нет в Excel?
Excel последний день месяца
Последний день месяца в MS EXCEL
: ? вычисляет дату конца типу функции вКроме того, можно составить реализации данной функции. МЕСЯЦ в Excel: а только лишь
примерах ниже, вы
Доступна и обработкаПодскажите, как из и первый аргумент
Первый день месяца в MS EXCEL
Определим дату, на которую=КОНМЕСЯЦА(A2;-1)+1Последний день месяца определяется: михаил, насколько я
: да, даты поikki месяца не зависимо Excel. гистограмму для анализаПример работы c функциями
текстовыми и числовыми
сможете наглядно увидеть
ДЕНЬНЕД. дат. При этом даты извлечь первый функции ДЕНЬНЕД() уменьшили приходится первый вторник=ДАТА(ГОД(A2);МЕСЯЦ(A2);1)
с помощью функции
понял, автору нужно порядку. И надо: yavorsky90, неужели за от А! иyavorsky90 самых продаваемых днейЭти примитивные функции очень ДЕНЬ и ДЕНЬНЕД. значениями. Чтобы отделить это. Важно помнить,Все они отображают числовые может возникнуть потребность
и последний день на 3, т.к.
месяца, вторую пятницу
Если КОНМЕСЯЦА(). немного другое -
Первый вторник месяца в MS EXCEL
учитывать года. Вариант 150 постов на числа месяцев. какие: Здравствуйте, форумчане. У недели, понять на
полезны при группировки Функция ДЕНЬ получает год, месяц или что при отображении
значения, соответствующие григорианскому вычленения из общего месяца. пятница через 3 или третью среду
Если ячейка проверка на пжоследнюю Nic70y как-то работает, форуме ни разу единички?
меня следующая проблема: какой день недели данных по: годам, вычислить из даты
день от полной даты в качестве календарю. Даже если значения конкретного числа,Например, есть дата: дня через вторника). месяца.содержит дату, а
А1 дату месяца из пробую понять как. не встречались сyavorsky90
есть в столбике приходится наибольшее количество месяцам, дням недели число любого дня: даты для этого
текста (автоматическая ориентация в таблице Excel например, года. Для 15.06.2017 г.В файле примера приведенаПусть в ячейкеB2содержит дату, то имеющихся в списке,ikki
Извлечь первый и последний день месяца из даты (Формулы/Formulas)
выражением «формула массива»?: Мне надо, чтобы
А набор дат продаж: и конкретным дням.Функция ДЕНЬНЕД возвращает номер
в Excel предусмотрены по левому краю
для отображения введенной этого существует отдельныеНужно из нее универсальная формула дляА2число месяцев, то
последний день месяца,
а не в
: НЕ формула массива,я специально заключил в столбце В за год, изВ таком виде оченьДопустим у нас имеется
дня недели (1-понедельник,
функции для работы ячейки), функция ГОД
Примеры функций для работы с датами: ГОД, МЕСЯЦ и ДЕНЬ в Excel
даты был выбран функции: ГОД, МЕСЯЦ, извлечь в одну нахождения нужного дняможет находится дата формула которому принадлежит эта календаре :) ввести в B2, формулу в фигурные стояли 1 если них надо найти удобно сегментировать отчеты
Примеры использования функций для обработки даты в Excel
простой отчет по 2-второник… и т.д.) с датами. не будет выполнена. календарь Хиджра, то ДЕНЬ и ДЕНЬНЕД. ячейку B2 дату: по порядковому номеру (см. файл примера).=ДАТА(ГОД(A2);МЕСЯЦ(A2)+B2;1) дата, определяется такyavorsky90 протянуть вниз скобки. в соответствующей строке
последнюю дату в по продажам за
- продажам:
- для любой даты:
- Пример: Есть таблица с
Ее результатом станет при вычленении годаТаблицы Excel хранят даты, 01.06.2017 г., в дня недели.Для определения первого вторникавернет первое число месяца, (см. файл примера):: Михаил, так не=—ИЛИ(МЕСЯЦ(A2)<>МЕСЯЦ(A3);ЕПУСТО(A3))вам их вводить А последняя существующая каждом месяце. длительные, средние и
Нам нужно быстро организоватьВо втором опциональном аргументе перечнем дат и отображение #ЗНАЧ. Поэтому и других составных
которые представлены в ячейку B3 дату:
В качестве аргументов формулы месяца, которому принадлежит отстоящего от исходного=КОНМЕСЯЦА(A1;0) получается, потому чтоyavorsky90 не надо. они дата месяца, иДелал вот так: короткие периоды времени. данные для визуального функции ДЕНЬНЕД следует в каждой из форматируемые даты должны значений посредством функций, качестве последовательности числовых 30.06.2017 г. задаются: порядковый номер дата в ячейке на число месяцевИли другой формулой: =ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;0) напротив 28.12.2007 тоже
: Спасибо огромное, все появятся сами - 0 — в =If(A1=Eomonth(A1;0);1;0). Но какСтоит сразу отметить что анализа без использования указать число 2 них необходимо отделить быть представлены в приложение представит число, значений. Начинается онаФайл во вложении. дня недели, деньА2 из ячейкиПервый день месяца определяется надо поставить 1 работает.
после того, как других случаях. прописать, чтобы формула для того чтобы сводных таблиц. Для
для нашего формата значение только года.
числовом варианте. Дни, которое является эквивалентом с 1 январяЗаранее спасибо.
недели, месяц и, можно использовать формулу:B2
в статье Первый (это последний существующийikki
вы завершите вводyavorsky90
ставила единицы если получить разницу между этого приведем отчет отсчета дня неделиВведем исходные данные в
месяцы и год по григорианской системе 1900 года. Этой_Boroda_
год.=$A2-ДЕНЬ($A2)+7-ДЕНЬНЕД($A2-ДЕНЬ($A2)-1;3)(т.е. если день месяца. в столбце день: должен заметить - формулы ctrl+shift+enter
: ikki ,что-то не в А1 не двумя датами нам в таблицу где (с понедельника-1 по Excel.
могут быть разделены летоисчисления. дате будет соответствовать
: начРешение обратной задачи: если
Для определения любого другого
Примеры практического применения функций для работы с датами
А2Первый день месяца можно месяца). последняя формула наврётпс. год формула
работает 31.12.2012, а 30.12.2012, не поможет ни
можно удобно и восркесенье-7):Для решения поставленной задачи, точкой, слешем илиЧтобы воспользоваться функцией ГОД, число 1. При=B1-ДЕНЬ(B1)+1 дана дата, а дня (третья среда,содержит 05/08/1999, а
определить с помощьюМихаил С. в случае, если не учитывает, ноФайл удален а 31.12.2012 нет одна из выше
быстро группировать данныеЕсли пропустить второй необязательный необходимо в ячейки запятой. нужно ввести в этом 1 январяилиКод=КОНМЕСЯЦА(B1;-1)+1илиКод=—ТЕКСТ(B1;»1.М.г»)А последняя и
нужно определить, какой четвертый четверг) вышеуказаннаяB2 функции ДАТА() или: Тогда вопрос должен
к примеру, следом вы этого и- велик размер совсем? То есть, описанных функций. Для по годам месяцам для заполнения аргумент, столбца B ввестиРассмотрим пример работы с ячейку следующую формулу
2009 года заложено так, без единички, по счету это формула должна быть– 3, то КОНМЕСЯЦА(). звучать примерно так:
как найти последний существующий день месяца.
за ячейкой 20.05.2007 не просили :))) — [ чтобы формула ставила данной задачи следует и дням недели: тогда будет использоваться формулу: функцией ГОД в
функции с одним в таблицах, как получитсяКод=—ТЕКСТ(B1;»М.г») день недели в модифицирована. Например, результат будет =Если ячейка «Как найти максимальную будет ячейка 12.05.2008.ikkiМОДЕРАТОРЫ
1 напротив последнего воспользоваться специально предназначенной
Теперь у нас есть формат по умолчанию=ГОД (адрес ячейки, из Excel. Если нам аргументом: число 39813. ИменноконКод=КОНМЕСЯЦА(B1;0) текущем месяце (например,
Второй вторник: =$A2-ДЕНЬ($A2)+7-ДЕНЬНЕД($A2-ДЕНЬ($A2)-1;3) 01/11/1999).А2 дату каждого месяцаесли такая вероятность: пс. если, как] существующего дня месяца. функцией РАЗНДАТ:
инструмент для работы (английский с воскресенья-1 даты которой нужно
нужно получить год=ГОД(адрес ячейки с датой такое количество днейvitalife 01/03/2011 – первый
+7Тот же результат вернетсодержит дату, то из списка дат?»
есть — добавьте в вашем наконец-то
yavorsky90ikkiТип значений в ячейках с этим отчетом по суботу-7). вычленить значение года)
из исходной даты в числовом формате) между двумя обозначенными
: Благодарю! вторник), приведено в(просто добавили 7 формула нижеследующие формулы вернут=—(ИНДЕКС(A2:A33;ПОИСКПОЗ(КОНМЕСЯЦА(A2;0);A2:A33))=A2)
«дата» требует особого по продажам. МыСоздадим формулу из комбинацийВ результате мы извлекаем нам не поможетАргумент функции является обязательным датами.
В таблицах Excel предусмотрена статье Первый вторник дней);=КОНМЕСЯЦА(A2;B2-1)+1 первый день месяцаMCH
на год. расположены по порядку файл получился. ПрикрепляюМихаил С.
подхода при обработке
можем фильтровать и функций ИНДЕКС и года из каждой
функция ПРАВСИМВ так для заполнения. ОнФункция ГОД используется аналогично возможность работы с месяца (обратная задача).Третья пятница: =$A2-ДЕНЬ($A2)+7-ДЕНЬНЕД($A2-ДЕНЬ($A2)Последний день месяца определяется
этой даты (см.: Ну и отМихаил С. — формулу можно
меньший: непонятно, что вам
данных. Поэтому следует сегментировать данные по ДЕНЬНЕД: даты. как она не может быть заменен смежным: различными видами текстовойvitalife
-4+14 в статье Последний файл примера): меня несколько вариантов: =—(КОНМЕСЯЦА(A2;0)=A2) сделать гораздо проще.112347 нужно. Eomonth() корректно
использовать соответствующие данному определенным критериям времени:Получим более понятный видАналогичный пример работы функции работает с датами, на «дата_в_числовом_формате». В
МЕСЯЦ;
и числовой информации.: Добрый день.(добавили 14 дней
Источник
Функция КОНМЕСЯЦА
В этой статье описаны синтаксис формулы и использование функции КОНМЕСЯЦА в 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 с помощью формул нужно динамически получить дату последнего месяца особенно в феврале и определить день недели. Ведь у високосного года (366) месяц февраль имеет 29 дней, а в обычном году – 28.
Сколько дней в феврале для любого года и любой даты?
Для начала рассмотрим, как вычислить дату последнего дня февраля месяца для любого года, чтобы определить високосный год или нет:
Анализируя пример на данном рисунке, следует помнить, что данную формулу можно применять для любого месяца, чтобы получить дату последнего дня, а не только для февраля. Иначе она выглядела бы так:
Функция ДАТА позволяет генерировать дату на лету с помощью трех аргументов:
- Год – можно указать любое число только лишь в диапазоне от 1900 и до 9999.
- Месяц – любое положительное или отрицательное число.
- День – любое положительное или отрицательное число.
Например, если в третьем аргументе указано число 0 как номер дня, Excel вычислит дату последнего дня из предыдущего месяца. Для наглядного примера составим формулу с числом 0, которая возвращает 29 февраля 2000-го года:
В следующем примере формулы вместо ввода статических значений в первые 2 аргумента функции ДАТА (год и месяц), используется функция ГОД, которая возвращает годы с исходных дат. Аналогично используется функция МЕСЯЦ возвращающая порядковый номер месяца в году из исходной даты. К этому номеру в формуле добавляется число 1. Благодаря чему мы получаем номер следующего месяца. Так как в третьем аргументе стоит число 0, автоматически получаем порядковый номер последнего дня в текущем месяце, который нас интересует.
Какой день недели для последнего дня месяца?
На этом рисунке ниже показано, как вычислить день недели и дату последнего дня февраля для любого года:
Формула состоит из двух частей, разделенных соединяющим оператором амперсантом (&» — «&):
- В первой части функция ТЕКСТ преобразует числовое значение, которое возвращает функция ДАТА в формат даты. Он указано во втором аргументе функции – «дд.мм.гг»
- Во второй части функция ТЕКСТ определяет день недели для исходной даты в первом ее аргументе, с помощью формата ячеек «дддд» указанном во втором аргументе.
Пример использования функции КОНМЕСЯЦА
В новых версиях Excel предусмотрена функция КОНМЕСЯЦА, которая служит альтернативным решением для выше описанной формулы:
Благодаря функции КОНМЕСЯЦА можно определять дату для текущего, предыдущего или будущего месяца заполнив лишь только 2 аргумента:
- Нач_дата – исходная дата или ссылка на нее.
- Число_месяцев – порядковый номер месяца начиная от исходной даты. Может быть любое положительное или отрицательное число. Примеры заполнения аргументов для функции КОНМЕСЯЦА, которая возвращает дату 29 февраля 2000-го года:
Если же мы укажем во втором аргументе отрицательное число, тогда функция возвращает нам дату последнего дня для предыдущего месяца:
Разумеется, если мы указываем во втором аргументе число 0 тогда получим необходимое значение даты последнего дня для текущего месяца:
Как определить високосный год или нет в Excel?
Чтобы определить високосный год или нет в Excel существует множество решений. Вот несколько из них:
При работе с датами особую сложность предоставляет тот факт, что раз в 4-е года количество дней в году составляет 366, тогда как в обычных годах 365. Поэтому иногда приходится воспользоваться вышеописанными примерами и формулами для различных вычислений в Excel.
Источник
Перейти к содержанию
На чтение 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 года.
Оцените качество статьи. Нам важно ваше мнение:
Хитрости »
23 Октябрь 2017 10919 просмотров
Проблема получения последнего дня месяца довольно распространена и очень просто решается. Начиная с 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
ссылки
статистика
Функция КОНМЕСЯЦА
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
В этой статье описаны синтаксис формулы и использование функции КОНМЕСЯЦА в Microsoft Excel.
Возвращает порядковый номер последнего дня месяца, отстоящего на указанное количество месяцев от даты, указанной в аргументе «нач_дата». Функция КОНМЕСЯЦА используется для вычисления даты погашения или даты платежа, которая приходится на конец месяца.
Аргументы функции КОНМЕСЯЦА описаны ниже.
нач_дата — обязательный аргумент. Начальная дата. Даты должны быть введены с использованием функции ДАТА или как результат вычисления других формул и функций. Например, для указания даты 23 мая 2008 года следует воспользоваться выражением ДАТА(2008;5;23). Если ввести даты как текст, это может привести к возникновению проблем.
Число_месяцев — обязательный аргумент. Количество месяцев до или после даты «нач_дата». Положительное значение аргумента «число_месяцев» означает будущие даты; отрицательное значение — прошедшие даты.
Примечание: Если значение аргумента «число_месяцев» не является целым числом, оно усекается.
В приложении Microsoft Excel даты хранятся в виде последовательных чисел, что позволяет использовать их в вычислениях. По умолчанию дате 1 января 1900 года соответствует номер 1, а 1 января 2008 года — 39448, так как интервал между этими датами составляет 39 448 дней.
Если нач_дата не является допустимой датой, КОНМЕСЯЦА Возвращает значение #NUM! значение ошибки #ЧИСЛО!.
Если нач_дата и месяцы возвращают недопустимую дату, КОНМЕСЯЦА Возвращает #NUM! значение ошибки #ЧИСЛО!.
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Функция КОНМЕСЯЦА вычисляет последний день месяца в 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 – текущий месяц.
Первый и последний день месяца в Excel
Формулы для определения первого и последнего дней месяца от текущей или произвольной даты. Использовать можно в шаблонах различных документов и отчетов, при заполнении которых требуется отобразить интервал дат с участием первого и(или) последнего дня месяца.
Первый день месяца в Excel
Для формулы, преобразующей текущую или другую дату в первый день месяца, используем функции «ДАТА», «ГОД» и «МЕСЯЦ»:
- Первый день текущего месяца от текущей даты: =ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());1)
- Первый день прошлого месяца от текущей даты: =ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ())-1;1)
- Первый день текущего месяца предыдущего года от текущей даты: =ДАТА(ГОД(СЕГОДНЯ())-1;МЕСЯЦ(СЕГОДНЯ());1)
- Первый день месяца от произвольной даты, записанной в ячейку «A1»: =ДАТА(ГОД(A1);МЕСЯЦ(A1);1)
Определить первый день месяца можно не только для прошедших периодов, но и для будущих, прибавив соответствующее количество лет или месяцев в формулу.
Последний день месяца в Excel
Для определения последнего месяца от текущей или произвольной даты в Excel, начиная с версии 2007 года, существует функция «КОНМЕСЯЦА» с двумя аргументами: «Начальная дата» и «Количество месяцев». Если «Количество месяцев» равно 0, то будет возвращен последний день того месяца, который содержится в аргументе «Начальная дата».
Примеры для Excel 2007-2016:
- Последний день текущего месяца от текущей даты: =КОНМЕСЯЦА(СЕГОДНЯ();0)
- Последний день прошлого месяца от текущей даты: =КОНМЕСЯЦА(СЕГОДНЯ();-1)
- Последний день текущего месяца предыдущего года от текущей даты: =КОНМЕСЯЦА(СЕГОДНЯ();-12)
- Последний день месяца от произвольной даты, записанной в ячейку «A1»: =КОНМЕСЯЦА(A1;0)
Функция «КОНМЕСЯЦА» возвращает значение в числовом виде, поэтому для правильного отображения последнего дня месяца следует к ячейке с формулой применить формат даты.
В версиях Excel по 2003 год функция «КОНМЕСЯЦА» по-умолчанию отсутствует, поэтому будем применять формулу, составленную, как и для первого дня месяца, из функций «ДАТА», «ГОД» и «МЕСЯЦ».
Примеры для Excel 2000-2003:
- Последний день текущего месяца от текущей даты: =ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ())+1;0)
- Последний день прошлого месяца от текущей даты: =ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());0)
- Последний день текущего месяца предыдущего года от текущей даты: =ДАТА(ГОД(СЕГОДНЯ())-1;МЕСЯЦ(СЕГОДНЯ())+1;0)
- Последний день месяца от произвольной даты, записанной в ячейку «A1»: =ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;0)
Не перепутайте в этих формулах вычитаемое или добавляемое количество месяцев, так как для определения последнего дня месяца, содержащегося в исходной дате, приходится текущий месяц увеличивать на единицу, чтобы вернуться к последнему дню из следующего месяца, указав количество дней равное нулю.
Как вариант, для определения последнего дня месяца можно использовать формулу, возвращающую первый день следующего месяца, из значения которой вычитается единица: =ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;1)-1
Определение первого и последнего дня месяца имеет большую актуальность для автоматического заполнения интервала дат в диалоговых формах с помощью VBA Excel.
Как рассчитать последний день месяца в 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.
Excel последний день месяца
Последний день месяца в MS EXCEL
: ? вычисляет дату конца типу функции вКроме того, можно составить реализации данной функции. МЕСЯЦ в Excel: а только лишь
примерах ниже, вы
Доступна и обработкаПодскажите, как из и первый аргумент
Первый день месяца в MS EXCEL
Определим дату, на которую=КОНМЕСЯЦА(A2;-1)+1Последний день месяца определяется: михаил, насколько я
: да, даты поikki месяца не зависимо Excel. гистограмму для анализаПример работы c функциями
текстовыми и числовыми
сможете наглядно увидеть
ДЕНЬНЕД. дат. При этом даты извлечь первый функции ДЕНЬНЕД() уменьшили приходится первый вторник=ДАТА(ГОД(A2);МЕСЯЦ(A2);1)
с помощью функции
понял, автору нужно порядку. И надо: yavorsky90, неужели за от А! иyavorsky90 самых продаваемых днейЭти примитивные функции очень ДЕНЬ и ДЕНЬНЕД. значениями. Чтобы отделить это. Важно помнить,Все они отображают числовые может возникнуть потребность
и последний день на 3, т.к.
месяца, вторую пятницу
Если КОНМЕСЯЦА(). немного другое -
Первый вторник месяца в MS EXCEL
учитывать года. Вариант 150 постов на числа месяцев. какие: Здравствуйте, форумчане. У недели, понять на
полезны при группировки Функция ДЕНЬ получает год, месяц или что при отображении
значения, соответствующие григорианскому вычленения из общего месяца. пятница через 3 или третью среду
Если ячейка проверка на пжоследнюю Nic70y как-то работает, форуме ни разу единички?
меня следующая проблема: какой день недели данных по: годам, вычислить из даты
день от полной даты в качестве календарю. Даже если значения конкретного числа,Например, есть дата: дня через вторника). месяца.содержит дату, а
А1 дату месяца из пробую понять как. не встречались сyavorsky90
есть в столбике приходится наибольшее количество месяцам, дням недели число любого дня: даты для этого
текста (автоматическая ориентация в таблице Excel например, года. Для 15.06.2017 г.В файле примера приведенаПусть в ячейкеB2содержит дату, то имеющихся в списке,ikki
Извлечь первый и последний день месяца из даты (Формулы/Formulas)
выражением «формула массива»?: Мне надо, чтобы
А набор дат продаж: и конкретным дням.Функция ДЕНЬНЕД возвращает номер
в Excel предусмотрены по левому краю
для отображения введенной этого существует отдельныеНужно из нее универсальная формула дляА2число месяцев, то
последний день месяца,
а не в
: НЕ формула массива,я специально заключил в столбце В за год, изВ таком виде оченьДопустим у нас имеется
дня недели (1-понедельник,
функции для работы ячейки), функция ГОД
Примеры функций для работы с датами: ГОД, МЕСЯЦ и ДЕНЬ в Excel
даты был выбран функции: ГОД, МЕСЯЦ, извлечь в одну нахождения нужного дняможет находится дата формула которому принадлежит эта календаре :) ввести в B2, формулу в фигурные стояли 1 если них надо найти удобно сегментировать отчеты
Примеры использования функций для обработки даты в Excel
простой отчет по 2-второник… и т.д.) с датами. не будет выполнена. календарь Хиджра, то ДЕНЬ и ДЕНЬНЕД. ячейку B2 дату: по порядковому номеру (см. файл примера).=ДАТА(ГОД(A2);МЕСЯЦ(A2)+B2;1) дата, определяется такyavorsky90 протянуть вниз скобки. в соответствующей строке
последнюю дату в по продажам за
- продажам:
- для любой даты:
- Пример: Есть таблица с
Ее результатом станет при вычленении годаТаблицы Excel хранят даты, 01.06.2017 г., в дня недели.Для определения первого вторникавернет первое число месяца, (см. файл примера):: Михаил, так не=—ИЛИ(МЕСЯЦ(A2)<>МЕСЯЦ(A3);ЕПУСТО(A3))вам их вводить А последняя существующая каждом месяце. длительные, средние и
Нам нужно быстро организоватьВо втором опциональном аргументе перечнем дат и отображение #ЗНАЧ. Поэтому и других составных
которые представлены в ячейку B3 дату:
В качестве аргументов формулы месяца, которому принадлежит отстоящего от исходного=КОНМЕСЯЦА(A1;0) получается, потому чтоyavorsky90 не надо. они дата месяца, иДелал вот так: короткие периоды времени. данные для визуального функции ДЕНЬНЕД следует в каждой из форматируемые даты должны значений посредством функций, качестве последовательности числовых 30.06.2017 г. задаются: порядковый номер дата в ячейке на число месяцевИли другой формулой: =ДАТА(ГОД(A1);МЕСЯЦ(A1)+1;0) напротив 28.12.2007 тоже
: Спасибо огромное, все появятся сами - 0 — в =If(A1=Eomonth(A1;0);1;0). Но какСтоит сразу отметить что анализа без использования указать число 2 них необходимо отделить быть представлены в приложение представит число, значений. Начинается онаФайл во вложении. дня недели, деньА2 из ячейкиПервый день месяца определяется надо поставить 1 работает.
после того, как других случаях. прописать, чтобы формула для того чтобы сводных таблиц. Для
для нашего формата значение только года.
числовом варианте. Дни, которое является эквивалентом с 1 январяЗаранее спасибо.
недели, месяц и, можно использовать формулу:B2
в статье Первый (это последний существующийikki
вы завершите вводyavorsky90
ставила единицы если получить разницу между этого приведем отчет отсчета дня неделиВведем исходные данные в
месяцы и год по григорианской системе 1900 года. Этой_Boroda_
год.=$A2-ДЕНЬ($A2)+7-ДЕНЬНЕД($A2-ДЕНЬ($A2)-1;3)(т.е. если день месяца. в столбце день: должен заметить - формулы ctrl+shift+enter
: ikki ,что-то не в А1 не двумя датами нам в таблицу где (с понедельника-1 по Excel.
могут быть разделены летоисчисления. дате будет соответствовать
: начРешение обратной задачи: если
Для определения любого другого
Примеры практического применения функций для работы с датами
А2Первый день месяца можно месяца). последняя формула наврётпс. год формула
работает 31.12.2012, а 30.12.2012, не поможет ни
можно удобно и восркесенье-7):Для решения поставленной задачи, точкой, слешем илиЧтобы воспользоваться функцией ГОД, число 1. При=B1-ДЕНЬ(B1)+1 дана дата, а дня (третья среда,содержит 05/08/1999, а
определить с помощьюМихаил С. в случае, если не учитывает, ноФайл удален а 31.12.2012 нет одна из выше
быстро группировать данныеЕсли пропустить второй необязательный необходимо в ячейки запятой. нужно ввести в этом 1 январяилиКод=КОНМЕСЯЦА(B1;-1)+1илиКод=—ТЕКСТ(B1;»1.М.г»)А последняя и
нужно определить, какой четвертый четверг) вышеуказаннаяB2 функции ДАТА() или: Тогда вопрос должен
к примеру, следом вы этого и- велик размер совсем? То есть, описанных функций. Для по годам месяцам для заполнения аргумент, столбца B ввестиРассмотрим пример работы с ячейку следующую формулу
2009 года заложено так, без единички, по счету это формула должна быть– 3, то КОНМЕСЯЦА(). звучать примерно так:
как найти последний существующий день месяца.
за ячейкой 20.05.2007 не просили :))) — [ чтобы формула ставила данной задачи следует и дням недели: тогда будет использоваться формулу: функцией ГОД в
функции с одним в таблицах, как получитсяКод=—ТЕКСТ(B1;»М.г») день недели в модифицирована. Например, результат будет =Если ячейка «Как найти максимальную будет ячейка 12.05.2008.ikkiМОДЕРАТОРЫ
1 напротив последнего воспользоваться специально предназначенной
Теперь у нас есть формат по умолчанию=ГОД (адрес ячейки, из Excel. Если нам аргументом: число 39813. ИменноконКод=КОНМЕСЯЦА(B1;0) текущем месяце (например,
Второй вторник: =$A2-ДЕНЬ($A2)+7-ДЕНЬНЕД($A2-ДЕНЬ($A2)-1;3) 01/11/1999).А2 дату каждого месяцаесли такая вероятность: пс. если, как] существующего дня месяца. функцией РАЗНДАТ:
инструмент для работы (английский с воскресенья-1 даты которой нужно
нужно получить год=ГОД(адрес ячейки с датой такое количество днейvitalife 01/03/2011 – первый
+7Тот же результат вернетсодержит дату, то из списка дат?»
есть — добавьте в вашем наконец-то
yavorsky90ikkiТип значений в ячейках с этим отчетом по суботу-7). вычленить значение года)
из исходной даты в числовом формате) между двумя обозначенными
: Благодарю! вторник), приведено в(просто добавили 7 формула нижеследующие формулы вернут=—(ИНДЕКС(A2:A33;ПОИСКПОЗ(КОНМЕСЯЦА(A2;0);A2:A33))=A2)
«дата» требует особого по продажам. МыСоздадим формулу из комбинацийВ результате мы извлекаем нам не поможетАргумент функции является обязательным датами.
В таблицах Excel предусмотрена статье Первый вторник дней);=КОНМЕСЯЦА(A2;B2-1)+1 первый день месяцаMCH
на год. расположены по порядку файл получился. ПрикрепляюМихаил С.
подхода при обработке
можем фильтровать и функций ИНДЕКС и года из каждой
функция ПРАВСИМВ так для заполнения. ОнФункция ГОД используется аналогично возможность работы с месяца (обратная задача).Третья пятница: =$A2-ДЕНЬ($A2)+7-ДЕНЬНЕД($A2-ДЕНЬ($A2)Последний день месяца определяется
этой даты (см.: Ну и отМихаил С. — формулу можно
меньший: непонятно, что вам
данных. Поэтому следует сегментировать данные по ДЕНЬНЕД: даты. как она не может быть заменен смежным: различными видами текстовойvitalife
-4+14 в статье Последний файл примера): меня несколько вариантов: =—(КОНМЕСЯЦА(A2;0)=A2) сделать гораздо проще.112347 нужно. Eomonth() корректно
использовать соответствующие данному определенным критериям времени:Получим более понятный видАналогичный пример работы функции работает с датами, на «дата_в_числовом_формате». В
МЕСЯЦ;
и числовой информации.: Добрый день.(добавили 14 дней
Содержание
- Получить месяц из даты с помощью функции ТЕКСТ в 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/