Excel месяц из даты прописью. Как в excel получить месяц из даты (функция текст и месяц) Эксель месяц прописью

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Понравилась статья? Поделитесь ей
Наверх