Excel месяц из даты прописью. Примеры функций для работы с датами: год, месяц и день в excel Формула эксель написать дату прописью

💖 Нравится? Поделись с друзьями ссылкой

Узнаем как написать дату и месяц прописью в Excel (в том числе в именительном и родительном падежах).

Приветствую всех, дорогие читатели блога сайт.

Подписывая какие-либо документы мы помимо собственного автографа очень часто вписываем туда и текущую дату в виде числа, месяца и года. При этом мы почти никогда там не встречаем месяц записанный в численном формате. Ведь, например, дата записанная как 12.11.2016 куда сложнее воспринимается и читается чем 12 ноября 2016 г.

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

Запись с помощью настройки формата ячейки

В Excel существует достаточно большое количество форматов отображения даты.

Давайте запишем дату в произвольную ячейку и перейдем в ее формат (щелкаем по ячейке правой кнопкой мыши и выбираем Формат ячейки, или просто нажимаем сочетание клавиш Ctrl + 1).

В открывшемся окне нас интересует вкладка Число :

Среди форматов дат выбираем запись месяца прописью и получаем:

Можно выбрать запись как со звездочкой (символ «*»), так и без, при этом различие отображения будет заключаться в изменении вида записи при смене настроек времени и даты операционной системы.

Запись с помощью формул

Спасибо за внимание!
Если у вас остались вопросы по теме статьи - пишите в комментариях.

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 предоставляет в распоряжение пользователя множество числовых форматов и функций. Однако встроенные средства, позволяющие написать дату и число прописью, в программе отсутствуют. Давайте попытаемся устранить эти недостатки.

Теперь приступим к реализации алгоритма, позволяющего написать прописью название дня недели из предыдущего примера. Введите в ячейку 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. Модули, формирующие название дня недели (с числовыми данными и формулами)

Дата и время прописью

Функция выводит в пропись дату, т.е. из даты "01.01.2009" делает текст "первое января две тысячи девятого года" . Зачем это может быть нужно? Например, когда необходимо записать в шапке(ну или где там еще) отчета не просто дату(01.01.2009), а дату прописью(первое января две тысячи девятого года). Результат доступен на русском и английском языках.

Вызов команды через стандартный диалог:

Вызов с панели MulTEx:

Сумма/Поиск/Функции - Текстовые - ПрописьДата

Синтаксис:
=ПрописьДата(I10 ;1;0;"RUS")

Дата (I10) - указывается дата, либо ссылка на ячейку с датой. Вместо ссылки на ячейку можно сразу указать дату
=ПрописьДата(09.01.2009 ;1;0;"RUS")

Время (1) - необязательный аргумент. Если указан, либо присвоено значение 1 или ИСТИНА - помимо даты, в пропись также выводится значение времени(09.10.2009 18:12:05 - девятое октября две тысячи девятого года восемнадцать часов двенадцать минут пять секунд ).
Если значение времени отсутствует в ячейке, либо равно нулю, то в пропись будет выведено нулевое значение (ноль часов ноль минут ноль секунд ). Подписи дней, месяцев,часов и минут склоняются (Тридцатое мая, Первое сентября, Один час, Два часа)

ТолькоПодпись (0) - необязательный аргумент. Если указан, либо присвоено значение 1 или ИСТИНА - в пропись выводится только название месяца и дописывается пропись года (09 октября 2009 года )

Язык ("RUS") - необязательный аргумент. Если не указан или указано "RUS", то текст будет выведен на русском языке. Если указать "EN" ("en","En" - регистр неважен), то текст будет выведен на английском языке. Если аргумент Время равен 1 или ИСТИНА, то время будет выведено в пропись на том же языке, что и дата.

Пользовательская функция «ДатаПрописью» предназначена для преобразования даты из числового формата 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!ДатаПрописью()

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

Рассказать друзьям