Green-sell.info

Новые технологии
1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Макрос сумма прописью в excel 2020

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

Программа печати суммы прописью в Excel

До того, как заняться созданием веб-сайтов, основатель нашей студии Андрей Коцюбинский писал книги по компьютерной тематике, и среди них значительной популярностью пользовалась книга «Excel для бухгалтера в примерах». С этой книгой распространялся макрос для Excel, автоматизирующий печать суммы прописью в электронных таблицах.

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

Надстройка: сумма прописью в Excel

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

Далее нужно поместить полученный файл в папку, в которой хранятся дополнительные надстройки. Конкретный путь к этой папке зависит от версии Excel, но скорее всего он будет похожим на этот: C:Documents and SettingsUserApplication DataMicrosoftAddIns , где вместо User следует подставить имя пользователя Windows. Дополнительное неудобство вызывается тем, что папка Application Data может быть скрыта, то есть не видна при просмотре в проводнике Windows. Проще всего для размещения скачанного файла в нужной папке выбрать в Excel команду меню Сервис — Надстройки и в появившемся диалоге нажать кнопку Обзор . Будет открыт диалог выбора файла с надстройкой, причем текущей окажется нужная вам папка. Запустите проводник Windows и перейдите в нем к папке, в которой находится скачанный ранее из интернета файл. Перетащите с помощью мыши значок файла из окна проводника в открытый диалог. Теперь файл с нужной надстройкой находится в нужной папке. Щелкните на нем мышью и нажмите кнопку OK , чтобы закрыть диалог. В списке доступных надстроек должна появиться строка Сумма Прописью . Установите флажок рядом с этой строкой и нажмите кнопку OK , после чего вы сможете использовать функцию печати суммы прописью в Excel.

Макрос: сумма прописью в Excel

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

Для включения макросов при работе с версией Excel 2002, входящей в состав Microsoft Office XP, или с версией Microsoft Office Excel 2003, нужно выбрать команду меню Сервис — Параметры . Будет открыт диалог настройки, имеющий несколько вкладок. Необходимо открыть вкладку Безопасность , на которой следует нажать кнопку Безопасность макросов . На экране появится диалог настройки безопасности Excel. С помощью переключателя, расположенного в диалоге, установите низкий уровень безопасности, чтобы выполнялись все макросы. Далее необходимо закрыть оба диалога, для чего следует нажать кнопки OK в них. В Excel 2000 для вызова аналогичного диалога ненобходимо выбрать команду меню Сервис — Макрос — Безопасность . Если же используется версия Excel 97, нужно выбрать команду меню Сервис — Параметры . В диалоге настройки следует выбрать вкладку Общие и снять флажок Защита от макровирусов . Следует заметить, что если вы не снимите защиту от макровирусов в Excel 97 или установите средний уровень безопасности в других версиях программы, при запуске Excel будет задан вопрос, хотите ли вы выполнять макросы, на который следует ответить утвердительно.

Чтобы подключать программу печати суммы прописью ко всем электронным таблицам, следует поместить полученный файл в папку автозапуска Excel. Данная папка называется XLStart , и расположена она в папке, в которой установлен Microsoft Office. Вначале найдите папку Program Files . Скорее всего, она расположена на диске C вашего компьютера. В этой папке следует найти папку Microsoft Office или Microsoft Office 2003 , а в ней папку Office 10 , Office 11 или Office , в зависимости от используемой вами версии. Вне зависимости от конкретных названий папок, в последней папке вы должны обнаружить папку XLStart . Поместите скачанный ранее файл sumprop.xls в данную папку, после чего при каждом запуске Excel будет открываться таблица, в которой располагается макрос печати суммы прописью.

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

Вне зависимости от способа, которым вы подключили программу, в качестве макроса из рабочей книги или в качестве надстройки, работа с ней ведется через использование функций Excel. Введите в первую ячейку третьей строки формулу =СуммаПрописью(836) и вы увидите результат вычислений: Восемьсот тридцать шесть рублей 00 копеек . Введите после этого в первую ячейку второй строки формулу =СуммаПрописью(A1) . Так как пока в ячейку A1 ничего не введено, то результатом будет Ноль рублей 00 копеек . После того, как в первую ячейку будет введено число, например, 3743917034,51 , результат изменится на Три миллиарда семьсот сорок три миллиона девятьсот семнадцать тысяч тридцать четыре рубля 51 копейка . При вводе другого числа результат соответственно изменится. О выводе результата в другой валюте рассказывается на странице суммы прописью для долларов, евро, гривен.

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

Вы можете использовать мастер функций, чтобы работать с функциями вывода суммы прописью и числа прописью. Вначале щелкните мышью на ячейке, в которую вы хотите вставить функцию, после чего откройте список доступных функций. В нем следует выбрать вариант Другие функции . Кроме того, для вызова функций можно нажать кнопку fx , расположенную в левой части строки формул. В ранних версиях программы аналогичная кнопка расположена на панели инструментов. Каким бы способом не вызван был мастер функций, в появившемся диалоге необходимо выбрать категорию Определенные пользователем . В списке функций данной категории должны находиться СуммаПрописью и ЧислоПрописью . Выбрав нужную функцию, нажмите кнопку OK , чтобы перейти к следующему диалогу мастера функций. В нем задаются аргументы, то есть вы должны ввести число, которое будет преобразовано в слова. Можно ввести непосредственно значение или сослаться на ячейку, в которой это значение расположено. Нажав кнопку OK , вы закроете диалог и вставите результат в текущую ячейку.

Читать еще:  Промежуточные итоги в excel номера функций

Дополнительные возможности функций СуммаПрописью и ЧислоПрописью

При использовании функции суммы прописью, вы можете включать ее в сложные выражения, как это принято в Excel. Например, вы можете вывести словами результат расчетов =СуммаПрописью(СУММ(B3:B12)/18-450) или добавить к результату слова «Прописью общая сумма:», как в этом примере: =СЦЕПИТЬ(«Прописью общая сумма: «;СуммаПрописью(B3)) .

Также имеется возможность незначительно изменить значения, выводимые в результате вычислений, используя средства Excel, предназначенные для обработки символьных данных. Например, если в ячейке A1 находится число 19,45 , и вместо результата Девятнадцать рублей 45 копеек вы хотите получить Девятнадцать руб. 00 коп. , нужно использовать примерно такую формулу:

=ЗАМЕНИТЬ(ЧислоПрописью(A1);1;1;ПРОПИСН(ЛЕВСИМВ(ЧислоПрописью(A1);1))) & » руб. 00 коп.»

Используемая в примере функция ЧислоПрописью вернет все нужные слова, а с помощью стандартных функции ЛЕВСИМВ и ПРОПИСН первая буква результата будет изменена из строчной в прописную. Далее первый символ будет заменен на новый с помощью функции ЗАМЕНИТЬ . И, после всех преобразований, к концу полученной строки с помощью оператора & будет добавлена строка «руб. 00 коп.». Следует отметить, что копейки в этом примере отбрасываются, и всегда выводятся целые значения рублей.

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

Как создается сумма прописью в Excel?

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

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

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

Создание сумм прописью с помощью формул

Это вполне осуществимый вариант, но очень громоздкий. Формула, которая может самостоятельно преобразовывать числа в буковки и правильно орфографически написать сумму прописью получится очень большой. В случае, когда вы захотите упростить формулу, вам нужно будет отдельный блок формул, который буде и заниматься всеми преобразованиями. Единственное преимущество от использования формулы, это когда вы разберетесь с ней, то самостоятельно сможете ее изменять: разрядность, валюту, склонение и т.п.

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

С помощью пользовательской функции

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

Для этого вам необходимо выполнить некоторые действия. Сначала скачиваете файл надстройки здесь. После, переносите его в папку AddIns, которую можно найти по пути C:Documents and SettingsUserApplication DataMicrosoftAddIns, только вы вместо «User» подставляете имя вашего пользователя Windows. Еще может возникнуть проблема в отображении папки «Application Data», она может быть скрыта, тогда вам в настройках «Свойства папки» нужно активировать пункт «Показать скрытые файлы и папки». Теперь собственно и приступим к включении этой надстройки. В Excel выбираем «Файл» — «Параметры» — «Надстройки». В диалоговом окне «Настройки» ставим галочку напротив включаемой надстройки «Сумма Прописью» и нажимаем «ОК». Следующим шагом, ставим курсор на нужную ячейку и вызываем «Мастер функций». В разделе «Категория» выбираем пункт «Определенные пользователем» и теперь весть список встроенных функций по написанию сумм прописью нам доступен. Кстати как видите, доступен даже выбор функций в разрезе валют. Сразу замечу, что надстроек бывает много, есть и более расширенные, но эта меня полностью устраивает, вот я ее и описываю. В результате мы получаем возможность получить следующие данные:

С помощью VBA

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

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

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

Вставить сумму прописью в ячейку таблицы «Excel» — Скачать макрос.

По какой-то странной бухгалтерской традиции во всех первичных и закрывающих документах требуется прописывать сумму полученных или оплаченных денежных средств прописью. Выписываешь счет — «укажите сумму прописью», закрываешь командировку — «укажите сумму прописью» и т.д.
Все бы ничего, да вот только некоторые числа в русском языке не только написать, но и выговорить без ошибок сложно.
Если вам приходится изо дня в день заполнять множество бухгалтерской документации, работа начинает напоминать маленькую каторгу.
Существует способ упростить внесение суммы прописью в документ, если сформировать форму документа в программе «Excel», а в клетку (ячейку) для ввода текстового значения суммы подставить формулу, которая переводит число в текст. Аргументом этой функции указать ячейку, в которую ставят сумму числом.

Остается вопрос: «Где взять функцию преобразующую число в текст?»
Ответ довольно прозаичен: «Нужно написать специальный макрос».

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


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

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

Dim RuExcel1, RuExcel2, RuExcel3, RuExcel4 As Variant

RuExcel1 = Array(«», «один «, «два «, «три «, «четыре «, «пять «, «шесть «, «семь «, «восемь «, «девять «)
RuExcel2 = Array(«», «десять «, «двадцать «, «тридцать «, «сорок «, «пятьдесят «, «шестьдесят «, «семьдесят «, _
«восемьдесят «, «девяносто «)
RuExcel3 = Array(«», «сто «, «двести «, «триста «, «четыреста «, «пятьсот «, «шестьсот «, «семьсот «, _
«восемьсот «, «девятьсот «)
RuExcel4 = Array(«», «одна «, «две «, «три «, «четыре «, «пять «, «шесть «, «семь «, «восемь «, «девять «)
RuExcel5 = Array(«десять «, «одиннадцать «, «двенадцать «, «тринадцать «, «четырнадцать «, _
«пятнадцать «, «шестнадцать «, «семнадцать «, «восемнадцать «, «девятнадцать «)

If n 0 Then tys_txt = RuExcel4(tys) & «тысяч « Case 1
tys_txt = RuExcel4(tys) & «тысяча «
Case 2, 3, 4
tys_txt = RuExcel4(tys) & «тысячи «
Case 5 To 9
tys_txt = RuExcel4(tys) & «тысяч «
End Select
If dectys = 0 And tys = 0 And sottys <> 0 Then sottys_txt = sottys_txt & » тысяч «
tysend:
sot_txt = RuExcel3(sot)
‘Рассчет десятков
Select Case dec
Case 1
ed_txt = RuExcel5(ed)
GoTo desend
Case 2 To 9
dec_txt = RuExcel2(dec)
End Select

ed_txt = RuExcel1(ed)
desend:
‘Сведение итога
СУММА_ПРОПИСЬЮ = 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

Этот макрос создает функцию преобразующую числа от 0 до 19 млн. в текстовые значения.

Читать еще:  Функция если в excel

Для преобразования рублей с копейками следует сделать отдельные ячейки для рублей и отдельные ячейки для копеек, так как данная версия макроса считает значения только до запятой (целочисленные значения).

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

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

Программа печати суммы прописью в Excel

До того, как заняться созданием веб-сайтов, основатель нашей студии Андрей Коцюбинский писал книги по компьютерной тематике, и среди них значительной популярностью пользовалась книга «Excel для бухгалтера в примерах». С этой книгой распространялся макрос для Excel, автоматизирующий печать суммы прописью в электронных таблицах.

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

Надстройка: сумма прописью в Excel

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

Далее нужно поместить полученный файл в папку, в которой хранятся дополнительные надстройки. Конкретный путь к этой папке зависит от версии Excel, но скорее всего он будет похожим на этот: C:Documents and SettingsUserApplication DataMicrosoftAddIns , где вместо User следует подставить имя пользователя Windows. Дополнительное неудобство вызывается тем, что папка Application Data может быть скрыта, то есть не видна при просмотре в проводнике Windows. Проще всего для размещения скачанного файла в нужной папке выбрать в Excel команду меню Сервис — Надстройки и в появившемся диалоге нажать кнопку Обзор . Будет открыт диалог выбора файла с надстройкой, причем текущей окажется нужная вам папка. Запустите проводник Windows и перейдите в нем к папке, в которой находится скачанный ранее из интернета файл. Перетащите с помощью мыши значок файла из окна проводника в открытый диалог. Теперь файл с нужной надстройкой находится в нужной папке. Щелкните на нем мышью и нажмите кнопку OK , чтобы закрыть диалог. В списке доступных надстроек должна появиться строка Сумма Прописью . Установите флажок рядом с этой строкой и нажмите кнопку OK , после чего вы сможете использовать функцию печати суммы прописью в Excel.

Макрос: сумма прописью в Excel

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

Для включения макросов при работе с версией Excel 2002, входящей в состав Microsoft Office XP, или с версией Microsoft Office Excel 2003, нужно выбрать команду меню Сервис — Параметры . Будет открыт диалог настройки, имеющий несколько вкладок. Необходимо открыть вкладку Безопасность , на которой следует нажать кнопку Безопасность макросов . На экране появится диалог настройки безопасности Excel. С помощью переключателя, расположенного в диалоге, установите низкий уровень безопасности, чтобы выполнялись все макросы. Далее необходимо закрыть оба диалога, для чего следует нажать кнопки OK в них. В Excel 2000 для вызова аналогичного диалога ненобходимо выбрать команду меню Сервис — Макрос — Безопасность . Если же используется версия Excel 97, нужно выбрать команду меню Сервис — Параметры . В диалоге настройки следует выбрать вкладку Общие и снять флажок Защита от макровирусов . Следует заметить, что если вы не снимите защиту от макровирусов в Excel 97 или установите средний уровень безопасности в других версиях программы, при запуске Excel будет задан вопрос, хотите ли вы выполнять макросы, на который следует ответить утвердительно.

Чтобы подключать программу печати суммы прописью ко всем электронным таблицам, следует поместить полученный файл в папку автозапуска Excel. Данная папка называется XLStart , и расположена она в папке, в которой установлен Microsoft Office. Вначале найдите папку Program Files . Скорее всего, она расположена на диске C вашего компьютера. В этой папке следует найти папку Microsoft Office или Microsoft Office 2003 , а в ней папку Office 10 , Office 11 или Office , в зависимости от используемой вами версии. Вне зависимости от конкретных названий папок, в последней папке вы должны обнаружить папку XLStart . Поместите скачанный ранее файл sumprop.xls в данную папку, после чего при каждом запуске Excel будет открываться таблица, в которой располагается макрос печати суммы прописью.

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

Вне зависимости от способа, которым вы подключили программу, в качестве макроса из рабочей книги или в качестве надстройки, работа с ней ведется через использование функций Excel. Введите в первую ячейку третьей строки формулу =СуммаПрописью(836) и вы увидите результат вычислений: Восемьсот тридцать шесть рублей 00 копеек . Введите после этого в первую ячейку второй строки формулу =СуммаПрописью(A1) . Так как пока в ячейку A1 ничего не введено, то результатом будет Ноль рублей 00 копеек . После того, как в первую ячейку будет введено число, например, 3743917034,51 , результат изменится на Три миллиарда семьсот сорок три миллиона девятьсот семнадцать тысяч тридцать четыре рубля 51 копейка . При вводе другого числа результат соответственно изменится. О выводе результата в другой валюте рассказывается на странице суммы прописью для долларов, евро, гривен.

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

Читать еще:  Excel для чайников

Вы можете использовать мастер функций, чтобы работать с функциями вывода суммы прописью и числа прописью. Вначале щелкните мышью на ячейке, в которую вы хотите вставить функцию, после чего откройте список доступных функций. В нем следует выбрать вариант Другие функции . Кроме того, для вызова функций можно нажать кнопку fx , расположенную в левой части строки формул. В ранних версиях программы аналогичная кнопка расположена на панели инструментов. Каким бы способом не вызван был мастер функций, в появившемся диалоге необходимо выбрать категорию Определенные пользователем . В списке функций данной категории должны находиться СуммаПрописью и ЧислоПрописью . Выбрав нужную функцию, нажмите кнопку OK , чтобы перейти к следующему диалогу мастера функций. В нем задаются аргументы, то есть вы должны ввести число, которое будет преобразовано в слова. Можно ввести непосредственно значение или сослаться на ячейку, в которой это значение расположено. Нажав кнопку OK , вы закроете диалог и вставите результат в текущую ячейку.

Дополнительные возможности функций СуммаПрописью и ЧислоПрописью

При использовании функции суммы прописью, вы можете включать ее в сложные выражения, как это принято в Excel. Например, вы можете вывести словами результат расчетов =СуммаПрописью(СУММ(B3:B12)/18-450) или добавить к результату слова «Прописью общая сумма:», как в этом примере: =СЦЕПИТЬ(«Прописью общая сумма: «;СуммаПрописью(B3)) .

Также имеется возможность незначительно изменить значения, выводимые в результате вычислений, используя средства Excel, предназначенные для обработки символьных данных. Например, если в ячейке A1 находится число 19,45 , и вместо результата Девятнадцать рублей 45 копеек вы хотите получить Девятнадцать руб. 00 коп. , нужно использовать примерно такую формулу:

=ЗАМЕНИТЬ(ЧислоПрописью(A1);1;1;ПРОПИСН(ЛЕВСИМВ(ЧислоПрописью(A1);1))) & » руб. 00 коп.»

Используемая в примере функция ЧислоПрописью вернет все нужные слова, а с помощью стандартных функции ЛЕВСИМВ и ПРОПИСН первая буква результата будет изменена из строчной в прописную. Далее первый символ будет заменен на новый с помощью функции ЗАМЕНИТЬ . И, после всех преобразований, к концу полученной строки с помощью оператора & будет добавлена строка «руб. 00 коп.». Следует отметить, что копейки в этом примере отбрасываются, и всегда выводятся целые значения рублей.

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

Число прописью в Excel (динамический вариант)

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

Иногда требуется записать число прописью: 256 записать как двести пятьдесят шесть . Набирать этот текст безумно скучно, кроме того легко ошибиться, поэтому давно написаны макросы на VBA, которые легко справляются с этой задачей.

В статье Число прописью (статичный вариант) приведено решение этой задачи позволяющей перевести число в текстовую форму по следующему алгоритму:

  • вводим число в определенную ячейку;
  • с помощью формул, вспомогательных диапазонов с текстом и имен получаем число прописью;
  • копируем результат вычисления формулы (число прописью) в Буфер обмена ;
  • вставляем текст в любую открытую книгу «Как значение» ( Главная/ Буфер обмена/ Вставить/ Вставить как значение ).

Это не всегда удобно. Хочется по аналогии с функциями на VBA написать что то вроде =ЧислоПрописью(А1) и получить результат. Все промежуточные вычисления должны быть «за кадром». Но, создание пользовательских функций это прерогатива VBA.

Тем не менее, можно предложить следующее решение с помощью обычных формул:

  • разместить в Личной книге макросов (PERSONAL.XLSB) вспомогательные диапазоны, содержащие некоторые числа прописью (от 0 до 999);
  • создать формулу, переводящую в текст любое число от 0 до 1 млрд. с помощью вспомогательных диапазонов и имен ;
  • в любой книге, где требуется записать число прописью создать Именованную формулуЧислоПрописью с относительной ссылкой на исходное число (относительную ссылку можно создать так, чтобы она позволяла выводить число прописью, например, в соседней ячейке слева от исходного числа).

В результате вышеуказанных манипуляций можно будет, например, записав в ячейке G 6 исходное число, а в ячейке G7 формулу =ЧислоПрописью , и получить нужный результат.

Все это реализовано в файле примера .

Как и в примере статьи Число прописью (статичный вариант) на листе Служ размещены вспомогательные диапазоны, содержащие некоторые числа прописью в Excel.

Теперь эти диапазоны длиннее (числа от 1 до 999) и содержат слова тысяча и миллион с учетом склонения. Также создан диапазон для отображения слова Рублей с учетом склонения.

Теперь все готово для записи формулы переводящей исходное число (ячейка B 6 ) в текст: =СЖПРОБЕЛЫ( ИНДЕКС(Миллионы;ОСТАТ(ОТБР(B6/1000000);1000000)+1)&» «& ИНДЕКС(Тысячи;ОСТАТ(ОТБР(B6/1000);1000)+1)&» «& ИНДЕКС(Единицы;ОСТАТ(B6;1000)+1))

Задача в принципе решена, осталось только разместить вспомогательные диапазоны в Личную книгу макросов PERSONAL.XLSB, для того чтобы формула, переводящая число в текст была доступна в любой книге.

В Windows XP эта книга находится в папке C:Documents and Settingsимя_пользователяApplication DataMicrosoftExcelXLStart, откуда она будет автоматически загружается при каждом запуске приложения Excel. В Windows Vista эта книга хранится в папке C:Usersимя_пользователяApplication DataMicrosoftExcelXLStart.

Если Личная книга макросов еще не была создана, то скопируйте лист Служ из файла примера в новую книгу, и сохраните ее в директорию C:Documents and Settingsимя_пользователяApplication DataMicrosoftExcelXLStart (для XP) под именем PERSONAL.XLSB.

Если Личная книга макросов уже была ранее создана, то через меню Вид/ Окно/ Отобразить отобразите ее, скопируйте в нее лист Служ, сохраните Личную книгу макросов (можно ее потом скрыть Вид/ Окно/ Скрыть ).

Теперь откройте книгу, в которой нужно записать число прописью . Исходное число разместите, например, в ячейке А1 . Введите в нужную ячейку формулу: =ЕСЛИ(A1;СЖПРОБЕЛЫ( ИНДЕКС(PERSONAL.XLSB!Миллионы;ОКРУГЛВНИЗ(A1;-6)/1000000+1)&» «& ИНДЕКС(PERSONAL.XLSB!тысячи;ОСТАТ(ОТБР(A1/1000);1000)+1)&» «& ИНДЕКС(PERSONAL.XLSB!Единицы;ОСТАТ(A1;1000)+1)&» руб. «&ТЕКСТ((A1-ЦЕЛОЕ(A1))*100;»00″)&» коп.»);»ноль руб. 00 коп.»)

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

Чтобы еще больше приблизиться к идеалу создадим именованную формулу ЧислоПрописью . Для этого:

  • выделите ячейку B1 ;
  • через меню Формулы/ Определенные имена/ Присвоить имя создайте именованную формулу ЧислоПрописью;
  • в поле Диапазон введите формулу указанную выше:
  • нажмите ОК;
  • в ячейке В1 введите формулу =ЧислоПрописью
  • ячейка В1 будет содержать число прописью.

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

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

Ссылка на основную публикацию
Adblock
detector