Как выделить месяц из даты в excel. Excel месяц из даты прописью. Запись с помощью формул

Excel для Office 365 Excel для Office 365 для Mac Excel Online Excel 2019 Excel 2016 Excel 2019 для Mac Excel 2013 Excel 2010 Excel 2007 Excel 2016 для Mac Excel для Mac 2011 Excel для iPad Excel для iPhone Excel для планшетов с Android Excel для телефонов с Android Excel Mobile Excel Starter 2010 Меньше

В этой статье описаны синтаксис формулы и использование функции МЕСЯЦ в Microsoft Excel.

Описание

Возвращает месяц для даты, заданной в числовом формате. Месяц возвращается как целое число в диапазоне от 1 (январь) до 12 (декабрь).

Синтаксис

МЕСЯЦ(дата_в_числовом_формате)

Аргументы функции МЕСЯЦ описаны ниже.

Замечания

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

Значения, возвращаемые функциями ГОД, МЕСЯЦ и ДЕНЬ, соответствуют григорианскому календарю независимо от формата отображения для указанного значения даты. Например, если для формата отображения заданной даты используется календарь Хиджра, то значения, возвращаемые функциями ГОД, МЕСЯЦ и ДЕНЬ, будут представлять эквивалентную дату по григорианскому календарю.

Пример

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

Дата

Формула

Описание

Результат

Месяц даты в ячейке A2

Пользовательская функция «ДатаПрописью» предназначена для преобразования даты из числового формата Excel в полную текстовую форму. Интервал преобразуемых дат составляет с 2001 по 2099 год. Используется в шаблонах доверенностей, договоров, соглашений, решений, уставов и других документов, заполняющихся в программе Excel и предусматривающих наличие строки с датой прописью. Формат преобразования: 01.01.2001 - «Первого января две тысячи первого года».

Добавить функцию «ДатаПрописью» в рабочую книгу Excel можно двумя способами: импортировать готовый модуль с функцией или самостоятельно добавить программный код в имеющийся модуль, или создав для этого новый.

Импорт модуля с функцией в проект

Импорт готового модуля в книгу Excel - самый простой способ добавления функции «ДатаПрописью».

  • Скачайте .
  • Импортируйте модуль в рабочую книгу, следуя инструкциям из .

Если вы хотите, чтобы функция «ДатаПрописью» была доступна из всех рабочих книг на вашем компьютере, импортируйте скачанный модуль в .

Вставка кода в стандартный модуль
  • Создайте новый и откройте его (или откройте уже имеющийся).
  • Скопируйте и вставьте в открытый модуль код функции «ДатаПрописью», приведенный ниже.
"Преобразование даты из числового формата в текст с 2001 по 2099 год Public Function ДатаПрописью(md As Date) As String If (md < 36892) Or (md > 73050) Then ДатаПрописью = "Преобразуемая дата должна быть с 2001 по 2099 год!" Else Dim den As Byte, dg(1 To 4) As Byte, mes As Byte, god As Byte, _ mespr As String, dmgpr As String den = Day(md) mes = Month(md) god = (Year(md) Mod 100) dg(1) = god Mod 10 dg(2) = Fix(god / 10) dg(3) = den Mod 10 dg(4) = Fix(den / 10) Dim dgpr(1 To 4) As String, i1 As Byte For i1 = 1 To 4 If (i1 = 1) Or (i1 = 3) Then If dg(i1 + 1) = 1 Then dgpr(i1) = Choose(dg(i1) + 1, "десятого ", "одиннадцатого ", "двенадцатого ", _ "тринадцатого ", "четырнадцатого ", "пятнадцатого ", "шестнадцатого ", _ "семнадцатого ", "восемнадцатого ", "девятнадцатого ") Else dgpr(i1) = Choose(dg(i1) + 1, "", "первого ", "второго ", _ "третьего ", "четвертого ", "пятого ", "шестого ", _ "седьмого ", "восьмого ", "девятого ") End If ElseIf (i1 = 2) Or (i1 = 4) Then If dg(i1 - 1) = 0 Then dgpr(i1) = Choose(dg(i1) + 1, "", "", "двадцатого ", _ "тридцатого ", "сорокового ", "пятидесятого ", "шестидесятого ", _ "семидесятого ", "восьмидесятого ", "девяностого ") Else dgpr(i1) = Choose(dg(i1) + 1, "", "", "двадцать ", _ "тридцать ", "сорок ", "пятьдесят ", "шестьдесят ", _ "семьдесят ", "восемьдесят ", "девяносто ") End If End If Next mespr = Choose(mes, "января ", "февраля ", "марта ", "апреля ", "мая ", _ "июня ", "июля ", "августа ", "сентября ", "октября ", "ноября ", "декабря ") dmgpr = dgpr(4) & dgpr(3) & mespr & "две тысячи " & dgpr(2) & dgpr(1) & "года" ДатаПрописью = Replace(dmgpr, Left(dmgpr, 1), UCase(Left(dmgpr, 1)), 1, 1) End If End Function

Если вы хотите, чтобы функция «ДатаПрописью» была доступна из всех рабочих книг на вашем компьютере, вставьте приведенный код в модуль, расположенный в .

Работа с функцией в Excel

Итак, если вы импортировали модуль или создали новый и вставили в него код, можете вызывать Мастер функций и работать с функцией «ДатаПрописью», как с любой другой, встроенной в Excel. Найти ее вы сможете в разделе «Определенные пользователем». В настройках вашей программы Excel должно быть .

Функцию «ДатаПрописью» в ячейки рабочего листа можно вписывать и вручную. Текст вводимой формулы будет зависеть от того, где расположен модуль с функцией:

  • в текущей рабочей книге - =ДатаПрописью()
  • в Личной книге макросов - =PERSONAL.XLSB!ДатаПрописью()

Если вы планируете книгу с функцией «ДатаПрописью» передавать на другой компьютер, модуль с ней должен быть в передаваемой книге.

Модуль для написания даты прописью, который мы сейчас рассмотрим, может найти более широкое применение (в частности, он пригодится при составлении платежных поручений и накладных). Задача состоит в том, чтобы заставить Excel написать дату словами, например, дату 12.02.2002 представить в виде текста "от 12 февраля 2002 года".

Решить эту задачу можно следующим методом: сначала разбить дату на составляющие, день месяц и год (причем для месяца сформировать не его порядковый номер в году, а название), а после этого все компоненты соединить в текстовой строке.

Таблица, построенная на базе этого алгоритма, с формулами и числовым примером показана на рис. 6.7.

Ячейки таблицы выполняют следующие функции:

  • ячейка А1 - служит входом (содержит дату в формате Excel);
  • ячейка А2 - определяет номер дня месяца;
  • ячейка A3 - определяет номер месяца;
  • ячейка А4 - определяет год;
  • ячейки А5:А15 - обеспечивает написание названия месяца;
  • ячейка А16 - добавляет нуль перед номером дня месяца, если этот номер меньше или равен 9;
  • ячейка А17 - служит выходом (содержит дату прописью).

Рис. 6.7.

Итак, нам необходимо выделить в дате день, месяц и год (ячейки А2, A3 и А4). Для определения дня задействуем функцию ДЕНЬ, принадлежащую к категории Дата и время. Функция возвращает номер дня в месяце для даты, указанной в числовом формате. День возвращается как целое число из диапазона от 1 до 31. Синтаксис функции имеет следующий вид:

ДЕНЬ(дата_в_числовом_формате)

Поместите табличный курсор в ячейку А2 и вызовите панель функции ДЕНЬ (рис. 6.8). В поле Дата_как_число введите адрес ячейки А1. Вы должны получить в ячейке А2 формулу, которая определяет день месяца, указанный во введенной в ячейку А1 дате:

ДЕНЬ(А1)

Для определения года используем функцию ГОД, которая также принадлежит к категории Дата и время. Функция возвращает год, соответствующий аргументу дата_в_числовом_формате. Год определяется как целое число в интервале от 1900 до 9999. Синтаксис функции следующий:

ГОД(дата_в_числовом_формате)

Рис. 6.8.

Разместите табличный курсор в ячейке A3 и вызовите панель функции ГОД (рис. 6.9). В поле Дата_как_число введите адрес ячейки А1. Формула в ячейке A3 должна имеет такой вид:

ГОД(А1)

Таким образом, в этой ячейке будет содержаться номер года от рождества Христова в дате, указанной в ячейке А1.

Рис. 6.9.

ГОДТеперь приступим к формированию названия месяца. Для определения номера месяца воспользуемся функцией МЕСЯЦ, принадлежащей к категории Дата и время. Функция возвращает месяц, соответствующий аргументу дата_в_число-вом_формате. Месяц определяется как целое в интервале от 1 (январь) до 12 (декабрь). Синтаксис функции такой:

МЕСЯЦ(дата_в_числовом_формате)

Установите табличный курсор в ячейку А4 и вызовите панель функции МЕСЯЦ (рис. 6.10). В поле Дата_как_число введите адрес ячейки А1. Полученная формула должна иметь вид:

МЕСЯЦ(А1)

В данном случае функция МЕСЯЦ определяет, какой номер месяца указан в дате, находящейся в ячейке А1.

Рис. 6.10.

В области А5:А15 необходимо разместить формулы, построенные на базе логической функции ЕСЛИ. С их помощью реализуется алгоритм, который аналогичен алгоритму, использованному для определения названия дня недели. Однако теперь вместо номеров дней недели указаны номера месяцев в году. В ячейке А5 формируется название месяца в родительном падеже. Занесите в ячейку А5 следующую формулу:

В ячейках А6:А14 расположите аналогичные формулы для других месяцев, а в ячейку А15 введите несколько другую формулу:

Мы хотим, чтобы номер дня, если он меньше 10, был представлен с предшествующим нулем. Реализовать это можно с применением помещенной в ячейку А16 формулы

ЕСЛИ(А2

Если порядковый номер дня месяца меньше или равен 9, функция ЕСЛИ возвращает 0. В противном случае она выдает пустую строку, потому что между кавычками в третьем аргументе ничего не введено.

Результат формируется в ячейке А17 с использованием формулы

="от"&А16&А2&" "&А5&" "&АЗ&" года."

В этой формуле при помощи символов "&" производится конкатенация (соединение) текстовых строк и содержимого ячеек, в которых находятся определенные ранее элементы даты. Перед датой добавляется предлог "от" (это нужно, в частности, для платежного поручения). Далее следует адрес ячейки А16. Она предназначена для вставки предшествующего нуля перед датой в случае, когда номер дня меньше 10. Указание адреса ячейки А2 приводит к вставке дня месяца. Дальше следует пробел (" "), перед названием месяца. В ячейке А5 находится название месяца. После него опять надо вставить пробел (" "). Ячейка A3 содержит год. Предлог " от " в начале формулы можно удалить или заменить другим.

Для конкатенации элементов можно использовать не только символ "&". В Excel есть текстовая функция СЦЕПИТЬ. Для ее вызова также применяется мастер функций. Панель функции приведена на рис. 6.11. С помощью этой функции можно получить формулу, которая аналогична предыдущей, но более удобна для восприятия:

СЦЕПИТЬ("от";А16;А2;" ";А5;" ";АЗ;" года.")

​ должен быть введен​ датами.​

  • ​Этот принцип лежит в​ в сообщение №​
  • ​ десятков.​
  • ​MCH​
  • ​: В ячейку А1​ эту формулу что​
  • ​ Код200?"200px":""+(this.scrollHeight+5)+"px");">=ТЕКСТ(A2;"[$-419]ММММ;@")​ 40602, так как​ ВПР() выбирать название​
  • ​ дата, то используйте​ 01.05.2000 из которой​

​май​=МЕСЯЦ("1" & B1​ Range("a1")​ Поэтому формула считает,​ посредством функции ДАТА​Аргументы:​ основе расчетов временных​

​ 7 от 06.01.2012,​

​удачи!​: Игорь, не знаю​ вводим дату, скажем​ бы после года​Альтернатива: Код200?"200px":""+(this.scrollHeight+5)+"px");">=ВПР(МЕСЯЦ(A2);{1;"январь":2;"февраль":3;"март":4;"апрель":5;"май":6;"июнь":7;"июль":8;"август":9;"сентябрь":10;"октябрь":11;"ноябрь":12;"декабрь"};2;)​ интервал между этими​

Функция ГОД в Excel

​ месяца по его​ Формат ячеек (нажмите​ функция МЕСЯЦ уже​.​ & "2012")​Select Case m​ что неделя начинается​ или представлять результат​начальная дата;​ данных. Чтобы найти​ 04:29 написал:​MCH​

​ как по украински,​

Функция МЕСЯЦ в Excel: пример

​ 15.06.2011. Что надо​ была буква г​tanver​ датами составляет 40​ номеру (см. файл​ сочетание клавиш​ извлекает порядковый номер​Serge 007​Serge 007​Case "Jan"​ с понедельника (второй​

​ вычисления других формул.​

Примеры функций ДЕНЬ, ДЕНЬНЕД и НОМНЕДЕЛИ в Excel

​конечная дата;​ количество дней между​Quote​: Ну и мой​ но по русски​ сделать, чтобы в​ с точкой и​: Спасибо, за быстрый​

​ 602 дня. О​ примера).​CTRL+1​ месяца - пятый​

​: Вариант​: Вариант покороче:​MsgBox 1​

​ день недели).​Пример использования функции ГОД:​код, обозначающий единицы подсчета​ двумя датами, достаточно​

​(MCH)200?"200px":""+(this.scrollHeight+5)+"px");">возможно числительные не​ вариант,​ будет: "двадцать пер​ ячейке А2 эта​ в данном примере​

​ ответ. Воспользовалась второй​ том как EXCEL​Функция МЕСЯЦ(), английский вариант​). О форматах даты​Как-то так​Busine2012​

​Код =МЕСЯЦ(B1&0)​Case "Feb"​

​Скачать примеры функций для​Возвращает месяц как целое​ (дни, месяцы, годы​ от более позднего​ правильно записаны, проверяйте​должна работать от​вое​

Функция для перевода названия месяца в число (Макросы Sub)

​ дата отображалась прописью​ ​ был результат Март​ формулой.​ хранит дату и​ MONTH(), возвращает месяц,​ подробнее можно прочитать​
​DV68​
​, так и работает.​
​xtreme​
​MsgBox 2​
​ работы с датами​

​ число (от 1​ ​ и др.).​
​ временного периода отнять​

​Во вложении 3​ ​ 01.01.1900 до 31.12.2299​
​.... шестьдесят пер​ на украинском языке​ 2017 г.​
​Никанор​

​ время, читайте эту​ ​ соответствующий заданной дате.​
​ в статье Пользовательский формат​: Проверил сейчас в​ ​Можете подставлять любой​
​: Плох тем, что​
​Case "Mar"​Для указания текущей даты​
​ до 12) для​Способы измерения интервалов между​
​ более ранний.​
​ варианта: с доп.​
​возможно числительные не​
​вого​
​ (п’ятнадцятого червня дві​
​sboy​
​:​
​ статью.​
​ Месяц определяется как​
​ ДАТЫ и ВРЕМЕНИ​
​ ячейке, все так​
​ день и любой​
​ может возникунуть вопрос​
​MsgBox 3​
​ используется функция СЕГОДНЯ​
​ заданной в числовом​
заданными датами:​
​​
​ листом, с помощью​
​ правильно записаны, проверяте​
​года"​
​ тисячі одинадцятого року)?​
​: Позволю себе ответить​
​Serge_007​
​=МЕСЯЦ(A1) Если в​
​ целое число в​
​ в MS EXCEL​ и есть.​
​ год, преобразование в​
​ а почему именно​

Преобразование название месяца в номер месяца в году

​Case "Apr"​ ​ (не имеет аргументов).​ формате даты. Аргумент​для отображения результата в​

​Построение значение даты, составляя​ ​ имен и UDF​(ТЕКСТ своровал у​​Числительные для дней​ ​MCH​ за Сергея​
​, Здравствуйте!​
​ ячейке​ диапазоне от 1​

​Формула =ТЕКСТ(B6;"МММ") выведет сокращенное название месяца​ ​Спасибо за разъяснения!​
​ дату будет происходить​

​ 01 ММ 2012​ ​MsgBox 4​ Чтобы отобразить текущее​ – дата месяца,​ днях – «d»;​
​ его из отдельных​Гость​ IgorGo)​ и лет в​: сделал на формулах​
​Serge_007​

​Извините за беспокойство​ ​А1​​ (январь) до 12​ ​ (3 буквы).​Diesel594​Busine2012​По факту всё​​Case "May"​ ​ время и дату,​ который необходимо отобразить,​​в месяцах – «m»;​ ​ элементов-чисел.​
​: СПАСИБО!!!​MCH​ разных падежах, в​​ (без макросов), на​ ​=ТЕКСТ(A2;"[$-419]ДД ММММ ГГГГ \г.;@")​ и что задаю​введена дата в​ (декабрь).​Особый формат =ТЕКСТ(B6;"[$-FC19] ММММ") выведет​: Рабочий вариант в​, сообщение​ равно какой год​MsgBox 5​ применяется функция ТДАТА​​ в числовом формате.​ ​в годах – «y»;​

​Синтаксис: год; месяц, день.​ ​Для работы с датами​​: вариант без доп.​ ​ украинском, думаю, также​
​ русском.​а зачем Вы​ похожий вопрос.​ одном из вышеуказанных​
​МЕСЯЦдата​ ​ полное название месяца​​ Excel 2007 "=МЕСЯЦ(A1+0)".​ ​#2​ и число, главное​

​Case "Jun"​ ​ ().​ Даты в текстовом​в месяцах без учета​​Все аргументы обязательные. Их​ ​ в Excel в​

​ ячеек (на именах)​ ​Хотя в примере​Думаю что на​
​ в каждом своем​Вы извините, я​ форматов, то формулой​)​
​ с учетом склонения,​

​Прошу прощения: был​ ​- это Ваше​
​ чтобы преобразование в​MsgBox 6​olega34​ формате функция обрабатывает​ лет – «ym»;​ можно задать числами​ разделе с функциями​ivanov1974​ ТС - падеж​ украинский легко будет​ посте пишите разноцветными​ не знаю можно​ будет возвращен месяц​Дата​ т.е. сентября. Этот​
​ не прав.​

​ сообщение​ ​ дату прошло​Case "Jul"​: Подскажите как сделать​
​ неправильно.​

​ перевести (только я​

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

Теперь приступим к реализации алгоритма, позволяющего написать прописью название дня недели из предыдущего примера. Введите в ячейку A3 формулу, созданную на основе логической функции "ЕСЛИ":

Если номер дня недели отвечает понедельнику (равен 2), то в этой ячейке появится текст Понедельник. Данное значение затем передается в ячейку A3 .

Заполните аналогичными формулами для других дней недели ячейки А5:А7 . А вот в ячейку А8 поместите следующую формулу:

=ЕСЛИ(А2=6;"Пятница";"Суббота")

Она не содержит ссылок на другие ячейки, поскольку мы уже перечислили все дни недели.

Алгоритм, реализованный при помощи этих формул, представлен на рис. 6.3.

Рис. 6.3. Алгоритм работы таблицы, формирующей название дня недели

Разработанная нами таблица располагается в диапазоне ячеек А1:А8 , ее входом является ячейка А1 , выходом - ячейка A3 . На рис. 6.4 показана таблица с формулами, а на рис. 6.5 - с числовыми значениями.

Воспользуемся методом вложения формул и минимизируем эту таблицу. На ее базе можно создать модуль, состоящий всего из двух ячеек. Ячейка А1 будет служить входом модуля, а ячейка А2 , в которой производятся вычисления, - выходом. Ячейка А2 должна содержать следующую формулу:

Рис. 6.4. Таблица, формирующая название дня недели (с формулами)

Рис. 6.5. Таблица, формирующая название дня недели (с числовыми значениями)

Данный модуль можно перемещать по рабочему листу и копировать в другие книги (файлы) и рабочие листы. Подкорректировав ссылку в формуле, вы можете изменить расположение ячеек входа и выхода: разместить их не в одной строке, а в одном столбце (рис. 6.6).

Рис. 6.6. Модули, формирующие название дня недели (с числовыми данными и формулами)

Понравилось? Лайкни нас на Facebook