Число прописью и сумма прописью с копейками в excel

С помощью VBA

Вот еще один способ на любителя. Конечно создать сумму прописью в Excel с помощью макроса не самый распространённый способ, но им достаточно часто пользовались и пользуются до сих пор. Большой сложности он не представляет, вам нужно:

  • Комбинацией горячих клавиш ALT+F11 вызвать редактор Visual Basic;
  • С помощью меню «Insert» — «Module», создать пустой новый модуль;
  • Скопировать предоставленный код макроса в тело модуля.

Получается готовая пользовательская функция VBA, которая умеет превращать любую сумму от 0 до 9 999 999 в ее текстовое воплощение, создается сумма прописью.

Код нужного макроса выглядит так:

Function СУММАПРОПИСЬЮ(n As Double) As String

Dim Nums1, Nums2, Nums3, Nums4 As Variant

Nums1 = Array(«», «один «, «два «, «три «, «четыре «, «пять «, «шесть «, «семь «, «восемь «, «девять «)

Nums2 = Array(«», «десять «, «двадцать «, «тридцать «, «сорок «, «пятьдесят «, «шестьдесят «, «семьдесят «, _

«восемьдесят «, «девяносто «)

Nums3 = Array(«», «сто «, «двести «, «триста «, «четыреста «, «пятьсот «, «шестьсот «, «семьсот «, _

«восемьсот «, «девятьсот «)

Nums4 = Array(«», «одна «, «две «, «три «, «четыре «, «пять «, «шесть «, «семь «, «восемь «, «девять «)

Nums5 = Array(«десять «, «одиннадцать «, «двенадцать «, «тринадцать «, «четырнадцать «,

«пятнадцать «, «шестнадцать «, «семнадцать «, «восемнадцать «, «девятнадцать «)

If n <= 0 Then

СУММАПРОПИСЬЮ = «ноль»

Exit Function

End If

‘разделяем число на разряды, используя вспомогательную функцию Class

ed = Class(n, 1)

dec = Class(n, 2)

sot = Class(n, 3)

tys = Class(n, 4)

dectys = Class(n, 5)

sottys = Class(n, 6)

mil = Class(n, 7)

decmil = Class(n, 8)

‘проверяем миллионы

Select Case decmil

Case 1

mil_txt = Nums5(mil) & «миллионов «

GoTo www

Case 2 To 9

decmil_txt = Nums2(decmil)

End Select

Select Case mil

Case 1

mil_txt = Nums1(mil) & «миллион «

Case 2, 3, 4

mil_txt = Nums1(mil) & «миллиона «

Case 5 To 20

mil_txt = Nums1(mil) & «миллионов «

End Select

sottys_txt = Nums3(sottys)

‘проверяем тысячи

Select Case dectys

Case 1

tys_txt = Nums5(tys) & «тысяч «

GoTo eee

Case 2 To 9

dectys_txt = Nums2(dectys)

End Select

Select Case tys

Case 0

If dectys > 0 Then tys_txt = Nums4(tys) & «тысяч «

Case 1

tys_txt = Nums4(tys) & «тысяча «

Case 2, 3, 4

tys_txt = Nums4(tys) & «тысячи «

Case 5 To 9

tys_txt = Nums4(tys) & «тысяч «

End Select

If dectys = 0 And tys = 0 And sottys 0 Then sottys_txt = sottys_txt & » тысяч «

sot_txt = Nums3(sot)

‘проверяем десятки

Select Case dec

Case 1

ed_txt = Nums5(ed)

GoTo rrr

Case 2 To 9

dec_txt = Nums2(dec)

End Select

ed_txt = Nums1(ed)

‘формируем итоговую строку

СУММАПРОПИСЬЮ = decmil_txt & mil_txt & sottys_txt & dectys_txt & tys_txt & sot_txt & dec_txt & ed_txt

End Function

‘вспомогательная функция для выделения из числа разрядов

Private Function Class(M, I)

Class = Int(Int(M — (10 ^ I) * Int(M / (10 ^ I))) / 10 ^ (I — 1))

End Function

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

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

=СУММАПРОПИСЬЮ(A3)&» руб. «&ТЕКСТ((A3-ЦЕЛОЕ(A3))*100;»00″)&» коп.»

Приставку «Module2» в моей формуле можете опустить, так как таким образом, программа разделяет 2 похожие формулы, одна от установленных надстроек, а вторая от макроса.

А на этом у меня всё! Я очень надеюсь, что всё о том, как ваши цифры сделать прописными вам понятно. Буду очень благодарен за оставленные комментарии, так как это показатель читаемости и вдохновляет на написание новых статей! Делитесь с друзьями прочитанным и ставьте лайк!

Не забудьте поблагодарить автора!

Что такое ограбление банка по сравнению с основанием банка?Бертольт Брехт​

>Число прописью в Excel 2003 и Excel 2007

Как сделать сумму прописью в excel 2016?

       Добрый день уважаемый читатель!

     Статья посвящена такому интересному вопросу: «Как создается сумма прописью в Excel?». Эта возможность позволяет нам всю массу информации и расчетов, которые сведены в один результат, оформить как финансовой документ, которые нельзя трактовать двузначно.

Недаром же любые банковские, юридические и финансовые документы оформляются и цифрами и буквами. Окромя всего, такие суммы не позволяют ошибаться, где же должна стоять запятая и просто отлично выглядят в сравнении с рядом цифр.

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

       Решить эту проблему можно несколькими способами:

  1. С помощью формул;
  2. С помощью пользовательской функции;
  3. С помощью VBA.

Использование надстройки

В Эксель нет встроенного инструмента, который бы помогал автоматически переводить цифры в слова. Поэтому для решения поставленной задачи используют специальные надстройки.

Одной из самых удобных является надстройка NUM2TEXT. Она позволяет поменять цифры на буквы через Мастер функций.

  1. Открываем программу Excel и переходим во вкладку «Файл».
  2. Перемещаемся в раздел «Параметры».
  3. В активном окне параметров переходим в раздел «Надстройки».
  4. Далее, в параметре настроек «Управление» устанавливаем значение «Надстройки Excel». Жмем на кнопку «Перейти…».
  5. Открывается небольшое окно надстроек Excel. Жмем на кнопку «Обзор…».
  6. В открывшемся окне ищем предварительно скачанный и сохраненный на жесткий диск компьютера файл надстройки NUM2TEXT.xla. Выделяем его и жмем на кнопку «OK».
  7. Мы видим, что данный элемент появился среди доступных надстроек. Ставим галочку около пункта NUM2TEXT и жмем на кнопку «OK».
  8. Для того, чтобы проверить как работает только что установленная надстройка пишем в любой свободной ячейке листа произвольное число. Выделяем любую другую ячейку. Кликаем по значку «Вставить функцию». Он расположен слева от строки формул.
  9. Запускается Мастер функций. В полном алфавитном перечне функций ищем запись «Сумма_прописью». Её раньше не было, но она появилась тут после установки надстройки. Выделяем эту функцию. Жмем на кнопку «OK».
  10. Отрывается окно аргументов функции Сумма_прописью. Оно содержит только одно поле «Сумма». Сюда можно записать обычное число. Оно в выделенной ячейке отобразиться в формате записанной прописью денежной суммы в рублях и копейках.
  11. После этого, любое число, которое записано в ячейку, указанную вами, будет отображаться в денежном виде прописью в том месте, где установлена формула функции.

Функцию можно также записать и вручную без вызова мастера функций. Она имеет синтаксис Сумма_прописью(сумма) или Сумма_прописью(координаты_ячейки). Таким образом, если вы в ячейке запишите формулу =Сумма_прописью(5) , то после нажатия кнопки ENTER в этой ячейке отобразиться надпись «Пять рублей 00 копеек».

Если вы введете в ячейку формулу =Сумма_прописью(A2) , то в таком случае, любое число, внесенное в ячейку A2 будет отображаться тут денежной суммой прописью.

Как видим, несмотря на то, что в Excel нет встроенного инструмента для преобразования чисел в сумму прописью, эту возможность можно довольно легко получить, просто установив необходимую надстройку в программу.

Мы рады, что смогли помочь Вам в решении проблемы.

Использование программы печати суммы прописью в Excel (Ексел)

Работа с ней ведется через использование функций Excel. Введите в первую ячейку третьей строки формулу =СуммаПрописью(836) и вы увидите результат вычислений:

Восемьсот тридцать шесть рублей 00 копеек.

Введите после этого в первую ячейку второй строки формулу =СуммаПрописью(A1). Так как пока в ячейку A1 ничего не введено, то результатом будет:

Ноль рублей 00 копеек.

После того, как в первую ячейку будет введено число, например, 3743917034,51, результат изменится на:

Три миллиарда семьсот сорок три миллиона девятьсот семнадцать тысяч тридцать четыре рубля 51 копейка.

При вводе другого числа результат соответственно изменится. Кроме печати суммы прописью доступна стала и еще одна дополнительная функция. Введите в первую ячейку число 582,43, а в любую свободную ячейку формулу =ЧислоПрописью(A1). Результатом будет пятьсот восемьдесят два, то есть первая буква уже не прописная, копейки отброшены и нет названия рублей. Также имеется возможность вывода суммы для названий женского рода – пятьсот восемьдесят две. Для этого следует использовать формулу =ЧислоПрописью(A1;ЛОЖЬ). Если второй параметр опущен, выводится сумма для названий мужского рода.

Функция сумма прописью на русском языке

После установки надстройки VBA-Excel добавится функционал для вставки суммы прописью. Он содержит удобную форму для ввода (см. рисунок справа), а также функцию СУММАПРОПИСЬЮ, которой можно пользоваться так же как и любой встроенной в Excel.

Вы сможете указать число прописью в любом падеже, а также выбрать формат вывода, который необходим в конкретном случае.

Вы можете указать сумму прописью в договоре в рублях (как с копейками так и без), в долларах США или евро (с центами или без). Помимо суммы договора можно прописывать прописью и срок в календарных или рабочих днях. Можно указывать количество товара прописью в штуках.

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

Вставка суммы прописью через пользовательскую форму

Наиболее простой способ вставить сумму прописью – это заполнить специальную форму.

  1. Выберите ячейку, в которую необходимо вставить число прописью.
  2. На вкладке VBA-Excel нажмите команду Сумма прописью и выберите язык Русский.
  3. Появится диалоговое окно для выбора параметров функции. Заполните ее так как необходимо Вам. Настройки автоматически сохраняются, чтобы не пришлось повторять действия в следующий раз.
  4. Нажмите Вставить текстом, тогда сумма прописью будет вставлена в ячейку как текст. Нажмите Вставить формулой в случае если в ячейку должна быть вставлена формула, в этом случае сумма прописью будет автоматически изменяться при редактировании числа.

Второй способ вставить сумму прописью – это ввести формулу в ячейку: =СУММАПРОПИСЬЮ(A1), где A1 – ссылка на ячейку с формулой.

Далее рассмотрим подробнее синтаксис функции.

Подробный синтаксис функции

Для использования функции не обязательно постоянно вызывать форму с параметрами. Функцию можно использовать также как и прочие функции Excel. Функция имеет следующие переменные:

=СУММАПРОПИСЬЮ(Число; ; ; ; ; ; )

Квадратные скобки означают что переменная не обязательная, в этом случае используется значение по умолчанию.

  • Число – ссылка на ячейку или число (не обязательно в числовом формате), которое необходимо написать прописью.
  • число от 1 до 6, определяющее падеж
  1. Именительный (по умолчанию если параметр не указан)
  2. Родительный
  3. Дательный
  4. Винительный
  5. Творительный
  6. Предложный

– число от 0 до 8 для добавления после суммы прописью в нужном падеже тип данных

  1. Ничего (по умолчанию если параметр не указан)
  2. Рубли
  3. Доллары США
  4. Евро
  5. Календарные дни
  6. Рабочие дни
  7. Дни
  8. Штуки
  9. Целое + дробная часть

– значение 0 или 1, которое указывает на необходимость записи дробной части числа прописью

  1. Не выводить прописью дробную часть числа (по умолчанию)
  2. Указать прописью также и дробную часть числа

– значение 0 или 1, которое указывает на необходимость дублирования числа перед суммой прописью

  1. Скрыть число перед суммой прописью
  2. Продублировать числовое значение суммы прописью (по умолчанию)

– значение 0 или 1, которое указывает на необходимость записывать сумму прописью в скобках

  1. Убрать скобки из суммы прописью
  2. Поместить сумму прописью в скобки (по умолчанию)

– значение 0 или 1, которое указывает на необходимость делать первую букву суммы прописью заглавной

  1. Все буквы суммы прописью строчные
  2. Сделать первую букву заглавной (по умолчанию)

Разберем синтаксис функции на примерах:

Склонение числительных по падежам.

Добавление типа данных после указания суммы прописью

Обратите внимание, что если вторая переменная (падеж) не задана, то указывается по умолчанию в именительном падеже

Как прописать дробную часть числа с помощью функции.

Различные форматы вывода суммы прописью.

Специальная надстройка NUM2TEXT

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

Алгоритм действий следующий:

  1. В верхней строке окна программы кликаем по меню “Файл”.
  2. В перечне слева выбираем пункт “Параметры”.
  3. В открывшихся параметрах программы кликаем по разделу “Надстройки”. В нижней части окна щелкаем по кнопке “Перейти” рядом с пунктом “Управление”, значение которого должно быть установлено как “Надстройки Excel”.
  4. На экране отобразится окно надстроек, в котором нажимаем кнопку “Обзор”.
  5. Откроется окно обзора, где мы переходим в папку, в которой находится заранее скачанный файл надстройки “NUM2TEXT.xla”. Выбираем его и щелкаем кнопку OK.
    Примечание: Официального сайта, с которого можно скачать надстройку, к сожалению нет, однако, в интернете ее достаточно легко найти, воспользовавшись поисковой системой. Главное – скачивайте файл с надежных источников, обязательно с расширением “xla”. Не лишним будет после загрузки файла на компьютер проверить его с помощью антивирусной программы.
  6. Система снова вернет нас в прежнее окно, где мы можем заметить, что в списке надстроек появилась и только что добавленная. Ставим флажок напротив нее (если это по какой-то причине не произошло автоматически), затем нажимаем кнопку OK.
  7. Теперь нам нужно убедиться, что надстройка работает. Для этого пишем в любой незаполненной ячейке случайное число. После этого переходим в другую свободную ячейку и жмем кнопку “Вставить функцию” (fx) слева от строки формул.
  8. В окне вставки функции выбираем категорию “Полный алфавитный перечень”, находим строку “Сумма_прописью”, щелкаем по ней, затем – по кнопке OK.
  9. Откроется окно с единственным аргументом функции – “Сумма”. В поле для ввода значения аргумента мы можем написать как обычное число, так и указать адрес ячейки, который печатаем вручную или выбираем в таблице кликом по нужному элементу (при этом, курсор должен находится в поле для ввода информации). После того, как значение аргумента заполнено, щелкаем OK.
  10. В ячейке с функцией отобразился результат в виде суммы прописью, что и требовалось.
    Причем, если мы поменяем число в исходной ячейке, на которую ссылается функция, значение в финальной ячейке также изменится.

Ручной ввод формулы функции

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

В данном случае, формула выглядит следующим образом:

=Сумма_прописью(Сумма)

В качестве аргумента “Сумма”, как мы ранее уже отметили, может быть указано как конкретное число, так и ссылка на ячейку.

Например, вот как выглядит финальная формула с числом 21: =Сумма_прописью(21) .

После того, как она набрана в нужной ячейке, нам остается только нажать Enter, чтобы получить результат.

Или же мы можем вместо числа указать адрес ячейки: =Сумма_прописью(B3) .

После нажатия клавиши Enter мы также получаем результат в виде суммы прописью в ячейке с формулой.

Num2Text

Прежде чем приступить к дальнейшим действиям, вам необходимо скачать данную надстройку. Официального сайта в этом случае нет. Таких модулей в интернете довольно много.

Будьте внимательны. Скачивайте только те файлы, у которых расширение xla, а не exe, поскольку во втором случае там могут быть вирусы.

После этого нужно сделать следующее:

  1. Зайдите в пункт меню «Файл».
  1. В появившемся окне перейдите в раздел «Параметры».
  1. Затем нажимаем на пункт «Надстройки».
  1. Кликните на кнопку «Перейти» (предварительно убедитесь, что рядом выбран пункт «Надстройки Excel»).
  1. После этого у вас появится окно, в котором можно вставить дополнительные файлы, чтобы редактор «узнал» новые функции. Нажмите на кнопку «Обзор».
  1. После этого укажите заранее скаченный файл и кликните «Открыть».
  1. Затем нужно поставить галочку около нового пункта и нажать на «ОК».

На этом этап подготовки завершен. Теперь Excel сможет делать перевод цифр в текстовый вид.

Создание простой формулы

Для того чтобы увидеть возможности новых функций, нужно сделать следующее:

  1. Перейдите на любую соседнюю ячейку. Кликните на иконку «Fx».
  1. В появившемся окне в разделе категории выберите пункт «Полный алфавитный перечень».
  1. Найдите там функцию «Сумма_прописью». Выберите её и нажмите на «OK».
  1. После этого появится окно, в котором нужно указать аргументы функции. Следует указать ячейку, значение которой должно писаться прописью. Для этого достаточно кликнуть на неё.
  1. Сразу после этого адрес ячейки подставится автоматически. Для продолжения кликните «OK».
  1. В результате этого вы увидите вашу сумму прописью. Вплоть до копеек. Благодаря этому можно переводить даже дробные числа.
  1. Попробуйте изменить ваше значение на любое другое. Сумма прописью изменится мгновенно.

Сумма ячеек

В финансовых отчетах необходимо считать сумму различных ячеек или столбцов. В этом случае формула немного усложняется. Рассмотрим, как это сделать.

  1. Проставьте цифры в 4 ячейки подряд.
  1. Кликните на ячейку, в которой вы работали до этого. Скопируйте формулу при помощи сочетания клавиш Ctrl+C.
  1. После этого перейдите в другую ячейку, чтобы создать новую формулу. Активируйте строку ввода уравнений.
  1. Нажмите на клавиатуре на кнопки Ctrl+V.
  1. Удаляем аргумент функции, то есть «C4» в нашем случае. Вместо этого в скобке пишем обычную формулу суммы, которая будет считать диапазон наших ячеек.

=Сумма_прописью(СУММ(A4:D4))

  1. В результате этого должно получиться следующее.
  1. Нажмите на клавиатуре на кнопку Enter. В итоге вы увидите, что сумма указанного диапазона значений отобразилась прописью.

У данного модуля есть большой минус – вы сможете работать только с российкими рублями. То есть, не получится сделать сумму прописью для узбекских сумов, украинских гривен, казахских тенге, американских долларов, белорусских рублей, английских фунтов и так далее. Язык поменять не выйдет. Для таких случаев существует альтернативный метод.

Функция прописи чисел и денежных сумм

Функция Пропись формирует пропись числа или денежной суммы в любом падеже:

При желании можно использовать сокращенные названия денежных единиц, с точкой или без:

В качестве денежной единицы допускается также использование трехбуквенных кодов валют международного стандарта ISO 4217,
таких как RUB, USD, EUR и др. При этом в название денежной единицы автоматически включается название страны:

См. также Полный список обозначений валют.

Кроме денежных единиц, возможно построить пропись числа в сочетании с произвольной единицей измерения, например:

Чтобы поставить результат в нужный падеж, укажите третьим параметром первую букву названия падежа
(И, Р, Д, В, Т, П):

Например, чтобы сформировать фразу «В течение 30 (Тридцати) календарных дней», используйте формулу:

Предупреждение ошибок в функции Пропись

При некоторых входных данных функция Пропись может выдавать ошибку. Ошибка выдается в ячейку с формулой в виде сообщения, начинающегося с «#ОШИБКА: … «

Ниже перечислены возможные ошибки и способы их предупреждения:

Слишком большое число. В целой части допустимо не более 30 значащих цифр.

=Пропись(1E+30; «единица»)

Вы передали в функцию слишком большое число.

На практике числа, большие чем 1030, обычно означают ошибку в вычислениях.
Если вам действительно нужна поддержка таких чисел, напишите автору программы и укажите необходимый диапазон.

Примечание: Указать «слишком маленькое» число невозможно.
Числа от 10 – 17 и меньше автоматически округляются до 0.

Третий аргумент (падеж) должен быть одной из букв: И, Р, Д, В, Т, П.

=Пропись(1; «единица»; «А»)

Вы передали в функцию неправильный идентификатор падежа.

Вставьте проверку на допустимость параметра.
Значения параметра должны быть заглавными русскими буквами и строго соответствовать списку.

Единица измерения нерусская или не имеет нужной падежной формы.

=Пропись(5; «edinitsa»)

=Пропись(5; «теля»)

=Пропись(5; «»)

Второй параметр либо пустой, либо не является русским словом, либо представляет собой слово, у которого нет нужной падежной формы.

Укажите правильную единицу измерения.

Слишком много цифр после запятой. Для большинства валют допустимо не более 2 цифр; для старых белорусских рублей (до деноминации 1 июля 2016 года) число должно быть целым.

=Пропись(1,234; «рубль»)

=Пропись(123,4; «BYR»)

Указанная денежная сумма содержит слишком много цифр после запятой.

Округлите сумму до нужного количества цифр. Почему функция Пропись не делает округление автоматически?
Потому что это могло бы привести к ошибкам округления.
Например, если 1 рубль поделить на троих и автоматически округлить результат до 0,33, то одна копейка потеряется:
0,33 * 3 = 0,99.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector