Excel надстройки num2text
Содержание:
- Создание сумм прописью с помощью формул
- С помощью пользовательской функции
- Шаг 2: устанавливаем надстройку
- Числа прописью с копейками заглавными или строчными буквами в Excel
- Цифры прописью в Excel
- Блок ячеек с формулами
- Макрос: сумма прописью в Excel 2007, 2010
- Sumprop
- Формула суммы прописью в Excel — как написать число
- Sumprop
- Через формулу
- Использование макросов
- Использование надстройки
- Преобразование с помощью макросов Excel
- Включаем надстройку NUM2TEXT в меню Excel
- Сумма прописью в Excel
Создание сумм прописью с помощью формул
Это вполне осуществимый вариант, но очень громоздкий. Формула, которая может самостоятельно преобразовывать числа в буковки и правильно орфографически написать сумму прописью получится очень большой. В случае, когда вы захотите упростить формулу, вам нужно будет отдельный блок формул, который буде и заниматься всеми преобразованиями. Единственное преимущество от использования формулы, это когда вы разберетесь с ней, то самостоятельно сможете ее изменять: разрядность, валюту, склонение и т.п.
Ради общего интереса я предоставлю вам пример файла с работающей формулой, которую я нашёл на excelworld.ru, поскольку самостоятельно формульным решением задачи я не занимался, но считаю нужным предоставить весь наработанный или собранный материал. Скачать пример можно по этой ссылке.
С помощью пользовательской функции
Как мой взгляд, это самое оптимальное и простое, относительно конечно, решение поставленного вопроса. Вы просто включаете функцию и пользуетесь ее с удовольствием.
Для этого вам необходимо выполнить некоторые действия. Сначала скачиваете файл надстройки здесь. После, переносите его в папку AddIns, которую можно найти по пути C:Documents and SettingsUserApplication DataMicrosoftAddIns, только вы вместо «User» подставляете имя вашего пользователя Windows. Еще может возникнуть проблема в отображении папки «Application Data», она может быть скрыта, тогда вам в настройках «Свойства папки» нужно активировать пункт «Показать скрытые файлы и папки». Теперь собственно и приступим к включении этой надстройки. В Excel выбираем «Файл» — «Параметры» — «Надстройки». В диалоговом окне «Настройки» ставим галочку напротив включаемой надстройки «Сумма Прописью» и нажимаем «ОК». Следующим шагом, ставим курсор на нужную ячейку и вызываем «Мастер функций». В разделе «Категория» выбираем пункт «Определенные пользователем» и теперь весть список встроенных функций по написанию сумм прописью нам доступен. Кстати как видите, доступен даже выбор функций в разрезе валют. Сразу замечу, что надстроек бывает много, есть и более расширенные, но эта меня полностью устраивает, вот я ее и описываю. В результате мы получаем возможность получить следующие данные:
Шаг 2: устанавливаем надстройку
Итак, надстройка NUM2TEXT вами была скачана и проверена на наличие вирусов. Если все оказалось в порядке, тогда можно приступать непосредственно к инсталляции данного макроса, который добавит функцию СУММА_ПРОПИСЬЮ в Excel. Далее будет представлена пошаговая инструкция, как это делать:
- Запустите непосредственно сам табличный редактор.
- Нажмите на кнопку «Файл».
- В появившемся меню кликните по кнопке «Параметры», расположенной на боковой панели.
- В открывшемся окне перейдите в категорию «Надстройки».
- Откроется область, где в нижней части будет располагаться выпадающий список «Управление». Выберите из него пункт «Надстройки Excel» и нажмите по кнопке «Перейти», расположенной справа.
- Появится еще одно окно, в котором необходимо выбрать настройку для отображения в программе. Так как NUM2TEXT еще не добавлена, это необходимо сделать.
- Нажмите на кнопку «Обзор».
- В окне файлового менеджера перейдите в папку со скачанной надстройкой.
- Выделите ее и нажмите кнопку «ОК».
После этого вы вернетесь в предыдущее окно со списком готовых для использования надстроек. Как можно заметить, NUM2TEXT успешно была добавлена. Для окончательной инсталляции вам остается лишь поставить напротив нее галочку и нажать кнопку «ОК».
Числа прописью с копейками заглавными или строчными буквами в Excel
Вот код VBA для пользовательской функции. Отображение суммы прописью с копейками и выбором первой заглавной или строчной буквы
Function РубПропись(Сумма As Double, Optional Без_копеек As Boolean = False, _ Optional КопПрописью As Boolean = False, Optional начинитьПрописной As Boolean = True) As String 'Функция для написания суммы прописью Dim ed, des, sot, ten, razr, dec Dim i As Integer, str As String, s As String Dim intPart As String, frPart As String Dim mlnEnd, tscEnd, razrEnd, rub, cop dec = Array("", "одна ", "две ", "три ", "четыре ", "пять ", "шесть ", "семь ", "восемь ", "девять ") ed = Array("", "один ", "два ", "три ", "четыре ", "пять ", "шесть ", "семь ", "восемь ", "девять ") ten = Array("десять ", "одиннадцать ", "двенадцать ", "тринадцать ", "четырнадцать ", "пятнадцать ", "шестнадцать ", "семнадцать ", "восемнадцать ", "девятнадцать ") des = Array("", "", "двадцать ", "тридцать ", "сорок ", "пятьдесят ", "шестьдесят ", "семьдесят ", "восемьдесят ", "девяносто ") sot = Array("", "сто ", "двести ", "триста ", "четыреста ", "пятьсот ", "шестьсот ", "семьсот ", "восемьсот ", "девятьсот ") razr = Array("", "тысяч", "миллион", "миллиард") mlnEnd = Array("ов ", " ", "а ", "а ", "а ", "ов ", "ов ", "ов ", "ов ", "ов ") tscEnd = Array(" ", "а ", "и ", "и ", "и ", " ", " ", " ", " ", " ") razrEnd = Array(mlnEnd, mlnEnd, tscEnd, "") rub = Array("рублей", "рубль", "рубля", "рубля", "рубля", "рублей", "рублей", "рублей", "рублей", "рублей") cop = Array("копеек", "копейка", "копейки", "копейки", "копейки", "копеек", "копеек", "копеек", "копеек", "копеек") If Сумма >= 1000000000000# Or Сумма < 0 Then РубПропись = CVErr(xlErrValue): Exit Function '&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& If Round(Сумма, 2) >= 1 Then intPart = Left$(Format(Сумма, "000000000000.00"), 12) For i = 0 To 3 s = Mid$(intPart, i * 3 + 1, 3) If s <> "000" Then str = str & sot(CInt(Left$(s, 1))) If Mid$(s, 2, 1) = "1" Then str = str & ten(CInt(Right$(s, 1))) Else str = str & des(CInt(Mid$(s, 2, 1))) & IIf(i = 2, dec(CInt(Right$(s, 1))), ed(CInt(Right$(s, 1)))) End If On Error Resume Next str = str & IIf(Mid$(s, 2, 1) = "1", razr(3 - i) & razrEnd(i)(0), _ razr(3 - i) & razrEnd(i)(CInt(Right$(s, 1)))) On Error GoTo 0 End If Next i str = str & IIf(Mid$(s, 2, 1) = "1", rub(0), rub(CInt(Right$(s, 1)))) End If РубПропись = str '''''''''''''''''' If Без_копеек = False Then frPart = Right$(Format(Сумма, "0.00"), 2) If frPart = "00" Then frPart = "" Else If КопПрописью Then frPart = IIf(Left$(frPart, 1) = "1", ten(CInt(Right$(frPart, 1))) & cop(0), _ des(CInt(Left$(frPart, 1))) & dec(CInt(Right$(frPart, 1))) & cop(CInt(Right$(frPart, 1)))) Else frPart = IIf(Left$(frPart, 1) = "1", frPart & " " & cop(0), frPart & " " & cop(CInt(Right$(frPart, 1)))) End If End If РубПропись = str & " " & frPart End If '''''''''''''''''' ' РубПропись = str & frPart If начинитьПрописной Then Mid$(РубПропись, 1, 1) = UCase(Mid$(РубПропись, 1, 1)) ' If начинитьПрописной Then РубПропись = UCase(Left(РубПропись, 1)) & Mid(РубПропись, 2) End Function
- Без копеек (1), с копейками (0)
- Копейки прописью (1), числом (0)
- Начинать прописью (0), заглавной (1)
Вот как используется функция
Примечание
- Данная функция будет работать с числами от 0 до 99 999 999
- Перед копирование кода переключите раскладку клавиатуры на русский язык (для корректного копирования русского текста)
- Код VBA необходимо вставлять во все файлы (Книги Excel), где вы хотите, чтобы она работала
- После вставки код, необходимо сохранить файл с поддержкой макросов xlsm (в Excel, начиная с 2007 версии)
- Функцию можно либо набирать в ручную, либо, если вы забыли как она пишется, через мастер функций (кнопка fx в строке формул, категория Определенные пользователем)
Цифры прописью в Excel
Для замены цифр прописью в Excel потребуется воспользоваться дополнительной надстройкой, но не стоит пугаться, если вы ничего в этом не понимаете. Читайте и делайте согласно инструкции, и все у вас получится.
Интересно. Как сделать подобное в Word читайте здесь.
Число прописью в Экселе. Установка
Как правило, необходимость конвертировать цифры в текст возникает в различных бухгалтерских и платежных документах, поэтому радует и наличие возможности выбора основных валют (рубли, доллары и евро).
Довольно лирики, давайте приступим и подробно разберемся, как написать число прописью.
Делаем в следующем порядке:
1. Скачиваем и распаковываем файл кликнув здесь.
2. Закиньте файл NUMSTR.XLA в папку Library, которая находится C:ProgramFiles (x86)MicrosoftOfficeOffice14Library (возможно расположение немного отличается, зависит от версий ПО).
3. Запустите Excel и на вкладке «Разработчик» кликните по кнопке «Надстройки» ( если ее нет, читайте ниже ).
Внимание. Если нет вкладки «Разработчик», пройдите Файл → Параметры → Настройка ленты и установите галку напротив пункта «Разработчик»
4. В окне «Надстройки» отметьте пункт NumStrAdd-in и нажмите ОК.
Усё можно пользоваться.
Число прописью в Excel. Как пользоваться
Расширение установлено, теперь несколько слов как использовать:
5. Для примера напишите в произвольной ячейке число цифрами.
6. Кликните по кнопке «Вставить Функцию».
7. В открывшемся окне «Мастер функций» в списке «Категория» выберите «Определенные пользователем».
8. После этого выберите необходимую функцию:
NumStr – отобразит цифры буквами в Excel;
RubStr – преобразует число прописью в рублях;
USDStr – конвертирует число прописью в долларах;
EURStr – выведет сумму прописью в евро.
9. В следующем окне «Аргументы функции» укажите в поле ячейку с данными (кликнут курсором) или непосредственно число цифрами, завершив нажатием кнопки ОК и растянувшейся улыбкой.
Интересно. Как закрепить строки в Excel читайте тут.
Блок ячеек с формулами
Скачайте файл Excel с блоком ячеек с формулами, преобразующими число в сумму прописью, и примером размещения ссылок.
Работать с блоком ячеек чрезвычайно просто:
- Скопируйте диапазон с формулами и вставьте в нужный файл.
- Замените в блоке входную ссылку рядом со словом «Вход».
- В ячейку, где должна отображаться сумма прописью, добавьте ссылку на выходную ячейку блока (рядом со словом «Выход»).
Пример размещения ссылок смотрите в скачанном файле. При желании, диапазон ячеек с формулами можно скрыть.
Преимущества блока ячеек с формулами:
- это самый простой для реализации способ автоматизации перевода числовых выражений в сумму прописью;
- файлы с блоками ячеек правильно работают у других пользователей программы Excel без дополнительного разрешения выполнения макросов.
Недостатки блока ячеек с формулами:
- не совсем удобно для пользователя каждый раз переносить блок ячеек с формулами из файла в файл;
- если диапазон ячеек с формулами скрыт или размещен вне видимого экрана, можно случайно удалить часть формул вместе с удаляемыми строками или столбцами.
Этих недостатков лишен более изящный способ преобразования числового денежного значения в текст с помощью пользовательской функции «СуммаПрописью».
Макрос: сумма прописью в Excel 2007, 2010
Можно использовать как обычный макрос, размещенный в обычной рабочей книге Excel (sumprop.xls). Я тоже так делаю, потому что не использую чужих, непроверенных макросов. После того, как вы скачаете файл с макросом Сумма Прописью , необходимо подключить данный макрос. Но для этого сначала необходимо разрешить выполнение макросов в MS Excel.
Для включения макросов при работе с версией Excel 2002 , входящей в состав Microsoft Office XP, или с версией Microsoft Office Excel 2003 , нужно выбрать команду меню Сервис – Параметры. Будет открыт диалог настройки, имеющий несколько вкладок. Необходимо открыть вкладку Безопасность, на которой следует нажать кнопку Безопасность макросов. На экране появится диалог настройки безопасности Excel. С помощью переключателя, расположенного в диалоге, установите низкий уровень безопасности, чтобы выполнялись все макросы. Далее необходимо закрыть оба диалога, для чего следует нажать кнопки OK в них.
В Excel 2000 для вызова аналогичного диалога необходимо выбрать команду меню Сервис – Макрос – Безопасность.
Если же используется версия Excel 97 , нужно выбрать команду меню Сервис – Параметры. В диалоге настройки следует выбрать вкладку Общие и снять флажок Защита от макровирусов. Следует заметить, что если вы не снимите защиту от макровирусов в Excel 97 или установите средний уровень безопасности в других версиях программы, при запуске Excel будет задан вопрос, хотите ли вы выполнять макросы, на который следует ответить утвердительно.
Sumprop
Вставляете функцию уже известным способом, только выбираете файл sumprop.xla
В окне надстроек ставите галочку напротив новой строчки и нажимаете ОК.
На рабочем листе в любой ячейке вставляете функцию с использованием встроенного мастера. Однако в строке Категория выбираете настройку Определенные пользователем.
При помощи sumprop можно писать прописью деньги, выраженные в рублях и копейках, гривнах и копейках, долларах и центах, евро и центах, а также денежные средства, которые не имеют дробной части. Стоит отметить, что для каждой валюты есть отдельная функция, которую нужно использовать для выражения в текстовом формате нужной суммы.
Такой макрос удобен для компаний, которые ведут бухгалтерию в мультивалютном формате.
Общим для обеих надстроек является то, что при изменении аргумента, пропись автоматически меняется вместе с дробной частью, в согласованном падеже. Использование функций актуально и для подсчета суммы чисел, а также для других математических действий с несколькими цифрами.
Формула суммы прописью в Excel — как написать число
Для вывода числа прописью в Excel можно создать формулу. Приведем пример:
ПОДСТАВИТЬ(ПРОПНАЧ(ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);1;1)+1)&ИНДЕКС(n0x;ПСТР(ТЕКСТ(A3;n0);2;1)+1;ПСТР(ТЕКСТ(A3;n0);3;1)+1)&ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);1;3);»миллиард»&ВПР(ПСТР(ТЕКСТ(A3;n0);3;1)*И(ПСТР(ТЕКСТ(A3;n0);2;1)-1);мил;2);»»)&ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);4;1)+1)&ИНДЕКС(n0x;ПСТР(ТЕКСТ(A3;n0);5;1)+1;ПСТР(ТЕКСТ(A3;n0);6;1)+1)&ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);4;3);»миллион»&ВПР(ПСТР(ТЕКСТ(A3;n0);6;1)*И(ПСТР(ТЕКСТ(A3;n0);5;1)-1);мил;2);»»)&ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);7;1)+1)&ИНДЕКС(n1x;ПСТР(ТЕКСТ(A3;n0);8;1)+1;ПСТР(ТЕКСТ(A3;n0);9;1)+1)&ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);7;3);ВПР(ПСТР(ТЕКСТ(A3;n0);9;1)*И(ПСТР(ТЕКСТ(A3;n0);8;1)-1);тыс;2);»»)&ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);10;1)+1)&ИНДЕКС(ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);14;6);n1x;n0x);ПСТР(ТЕКСТ(A3;n0);11;1)+1;ПСТР(ТЕКСТ(A3;n0);12;1)+1));»z»;» «)&ЕСЛИ(ОТБР(ТЕКСТ(A3;n0));;»Ноль «)&ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);14;6);ЕСЛИ(ОСТАТ(МАКС(ОСТАТ(ПСТР(ТЕКСТ(A3;n0);11;2)-11;100);9);10);»целых «;»целая «)&ПОДСТАВИТЬ(ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);14;6)/10^5+1)&ИНДЕКС(n1x;ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6)/10^4;10)+1;ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6)/1000;10)+1)&ЕСЛИ(ЦЕЛОЕ(ПСТР(ТЕКСТ(A3;n0);14;6)/1000);ВПР(ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6)/1000;10)*(ОСТАТ(ЦЕЛОЕ(ПСТР(ТЕКСТ(A3;n0);14;6)/10^4);10)<>1);тыс;2);»»)&ИНДЕКС(n_4;ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6)/100;10)+1)&ИНДЕКС(n1x;ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6)/10;10)+1;ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6);10)+1);»z»;» «)&ИНДЕКС(доля;ДЛСТР(ПСТР(ТЕКСТ(A3;n0);14;6));(ОСТАТ(МАКС(ОСТАТ(ПСТР(ТЕКСТ(A3;n0);14;6)-11;100);9);10)>0)+1);)
Для ее использования вам необходимо указать несколько массивов Excel:
- n_1 ={«»;»одинz»;»дваz»;»триz»;»четыреz»;»пятьz»;»шестьz»;»семьz»;»восемьz»;»девятьz»}
- n_2 ={«десятьz»;»одиннадцатьz»;»двенадцатьz»;»тринадцатьz»;»четырнадцатьz»;»пятнадцатьz»;»шестнадцатьz»;»семнадцатьz»;»восемнадцатьz»;»девятнадцатьz»}
- n_3 ={«»:1:»двадцатьz»:»тридцатьz»:»сорокz»:»пятьдесятz»:»шестьдесятz»:»семьдесятz»:»восемьдесятz»:»девяностоz»}
- n_4 ={«»;»стоz»;»двестиz»;»тристаz»;»четырестаz»;»пятьсотz»;»шестьсотz»;»семьсотz»;»восемьсотz»;»девятьсотz»}
- n_5 ={«»;»однаz»;»двеz»;»триz»;»четыреz»;»пятьz»;»шестьz»;»семьz»;»восемьz»;»девятьz»}
- n0 =»000000000000″&ПСТР(1/2;2;1)&»0#####»
- n0x =ЕСЛИ(n_3=1;n_2;n_3&n_1)
- n1x =ЕСЛИ(n_3=1;n_2;n_3&n_5)
- доля ={«десятая»;»десятых»:»сотая»;»сотых»:»тысячная»;»тысячных»:»десятитысячная»;»десятитысячных»:»стотысячная»;»стотысячных»:»миллионная «;»миллионных»}
- мил ={0;»овz»:1;»z»:2;»аz»:5;»овz»}
- тыс ={0;»тысячz»:1;»тысячаz»:2;»тысячиz»:5;»тысячz»}
Просто скопируйте эту таблицу на лист Excel, а формулу вставляйте туда, где необходима сумма прописью. Вышеприведенная конструкция предназначена для ячейки A3. Не забудьте поменять адрес.
В англоязычном Excel формула суммы прописью будет выглядеть следующим образом:
Как видим, это не самый удобный способ преобразовать число в текст прописью в Excel.
Sumprop
Установка данного модуля происходит точно так же, как в описанном выше способе, только на этот раз выбираем другой файл.
Ставим галочку возле новой надстройки и нажимаем на кнопку «OK».
После этого в вашем редакторе появится еще несколько новых функций. Рассмотрим их всех.
Работа с формулами
Для этого нужно сделать следующие действия.
- Первым делом создадим наглядную таблицу. В одном столбце у нас будут цифры, во втором – результат. Для демонстрации возможностей будем использовать дробные числа.
- Переходим первую пустую ячейку и нажимаем на кнопку «Fx».
В появившемся окне выберите категорию «Определенные пользователем». Новые функции будут именно там.
Будем вставлять поочередно. Именно в той хронологии, как они идут в списке.
СуммаПрописью
- Выберите соответствующий пункт и нажмите на кнопку «OK».
- В появившемся окне нужно вставить аргумент. Для этого достаточно кликнуть на ячейку с числом.
- Благодаря этому адрес подставится автоматически. Для продолжения нажмите на кнопку «OK».
- В результате этого вы увидите следующее.
СуммаПрописьюГривны
- Выделяем следующую строчку и кликаем на иконку вставки функции.
- На этот раз выбираем вторую функцию. Для вставки нажимаем на кнопку «OK».
- Затем кликаем на следующее число.
- После автоматической подстановки нажмите на кнопку «OK».
- Результат будет следующим.
СуммаПрописьюДоллары
- Переходим на третью строчку и кликаем на иконку «Fx».
- Выбираем «долларовую» функцию и нажимаем на «OK».
- Указываем соответствующий аргумент.
- Кликаем на «OK».
- Благодаря этому целое число отображается в долларах, а дробное – в центах.
СуммаПрописьюЕвро
- Переходим на четвертую строчку и вызываем окно вставки уравнения.
- Указываем функцию для «Евро».
- Кликаем на соответствующий аргумент.
- Нажимаем на кнопку «OK».
- Результат будет следующим.
ЧислоПрописью
Преимущество данного модуля в том, что вы можете осуществить преобразование без дополнительных денежных приставок.
- Перейдите на последнюю строчку и нажмите на иконку «Fx».
- Выберите последнюю функцию.
- В качестве аргумента укажите последнее оставшееся число.
- Для вставки нажмите на кнопку «OK».
В результате проделанных действий, мы увидим следующую таблицу.
Через формулу
Теперь я бы хотел поговорить о сложности построения такой функции или формулы самому. Как бы я строил подобную функцию:
- Я бы определил разрядность числа.
- Потом я бы подобрал каждой цифре нужное слово, которое бы выбирал из группы названий.
- Определил бы падеж единицы.
Т.е., тут пришлось бы использовать как минимум 4 диапазона (например, один диапазон отвечает за сотни: сто, двести, триста и т.д.), кучу условий, функции деления на ноль, ну и само собой ряд функций, текстовых и массивных.
Я имею в виду, что вот так сразу задачу не взять, поэтому, как мне понимается, Excel и не включает в стандартные средства сумму прописью, ведь условия написания разные на каждом языке.
Мне понравились формулы получения суммы прописью вот по этому адресу . Здесь я их разбирать не буду, т.к. это долгий процесс и немного ненужный, т.к. проще взять и пользоваться.
Удачи в использовании! Эксель Практик «Глаза боятся, а руки делают»
Использование макросов
Макросы — небольшие файлы, которые любой пользователь может написать в среде visual basic. Пользователи, которым интересно, как его писать могут изучить это в интернете. Функция макросов в excel — различные операции с полученными данными, например:
- Преобразование результата из численного вида в буквенный. То есть сумма прописью.
- При запуске макроса может меняться цвет и размер шрифта.
- Кнопка, сделанная при помощи макроса.
- Выпадающие списки и галочки.
После скачивания этого архива, его нужно распаковать. Если вы примените полученный макрос только в каком-то конкретном файле, то он будет работать только в нём. А нам нужно, чтобы макрос работал во всех документах, с которыми мы будем работать в программе excel. Для этого нужно сделать следующие шаги:
- Создать новый документ в excel и открыть его.
- Запустить редактор Visual Basic. Для тех, кто не знает, это делается нажатием комбинации клавиш Alt+f11.
- Левой кнопкой мыши два раза кликнуть по первой строке в появившемся списке в левом верхнем углу.
- В появившемся списке выбрать папку с именем Microsoft Excel Objects.
- Среди файлов этой папки следует выбрать файл «Эта книга».
- Щелчком правой кнопки мыши открыть контекстное меню и выбрать пункт Import file.
- Из предложенный файлов нужно выбрать тот, что мы скачали.
Теперь мы можем делать сумму прописью в excel. Однако, формула, которую мы будем вводить в ячейку, будет немного отличаться от той, когда мы применяли надстройку. Здесь нужно ввести следующее: «=PERSONAL. XLSB! СуммаПрописью (Номер ячейки с результатом)».
Использование надстройки
В Эксель нет встроенного инструмента, который бы помогал автоматически переводить цифры в слова. Поэтому для решения поставленной задачи используют специальные надстройки.
Одной из самых удобных является надстройка NUM2TEXT. Она позволяет поменять цифры на буквы через Мастер функций.
- Открываем программу Excel и переходим во вкладку «Файл».
Перемещаемся в раздел «Параметры».
В активном окне параметров переходим в раздел «Надстройки».
Открывается небольшое окно надстроек Excel. Жмем на кнопку «Обзор…».
В открывшемся окне ищем предварительно скачанный и сохраненный на жесткий диск компьютера файл надстройки NUM2TEXT.xla. Выделяем его и жмем на кнопку «OK».
Мы видим, что данный элемент появился среди доступных надстроек. Ставим галочку около пункта NUM2TEXT и жмем на кнопку «OK».
Запускается Мастер функций. В полном алфавитном перечне функций ищем запись «Сумма_прописью». Её раньше не было, но она появилась тут после установки надстройки. Выделяем эту функцию. Жмем на кнопку «OK».
Отрывается окно аргументов функции Сумма_прописью. Оно содержит только одно поле «Сумма». Сюда можно записать обычное число. Оно в выделенной ячейке отобразиться в формате записанной прописью денежной суммы в рублях и копейках.
Можно в поле занести адрес любой ячейки. Это делается либо путем ручной записи координат этой ячейки, либо простым кликом по ней в то время, когда курсор находится в поле параметра «Сумма». Жмем на кнопку «OK».
После этого, любое число, которое записано в ячейку, указанную вами, будет отображаться в денежном виде прописью в том месте, где установлена формула функции.
Функцию можно также записать и вручную без вызова мастера функций. Она имеет синтаксис Сумма_прописью(сумма) или Сумма_прописью(координаты_ячейки). Таким образом, если вы в ячейке запишите формулу =Сумма_прописью(5) , то после нажатия кнопки ENTER в этой ячейке отобразиться надпись «Пять рублей 00 копеек».
Если вы введете в ячейку формулу =Сумма_прописью(A2) , то в таком случае, любое число, внесенное в ячейку A2 будет отображаться тут денежной суммой прописью.
Как видим, несмотря на то, что в Excel нет встроенного инструмента для преобразования чисел в сумму прописью, эту возможность можно довольно легко получить, просто установив необходимую надстройку в программу.
Office 365, AD, Active Directory, Sharepoint, C#, Powershell. Технические статьи и заметки.
Excel. Сумма прописью без макросов и надстроек
Дано: Excel c числами и суммами в рублях в ячейках. Задача: написать данные числа прописью без использования макросов и каких-либо надстроек программы Excel, т.е. написать число прописью при помощи стандартных формул.
Пример файла excel с таким решением можно скачать здесь. См. также Сумма прописью онлайн (если просто нужно получить результат). Что означает прописью? Данный файл производит следующие манипуляции с числами:
1. Формула 1 преобразовывает число в сумму прописью следующего формата: «0 (пропись) рублей 00 копеек»
2. Формула 2 преобразовывает число в сумму прописью следующего формата: «Пропись рублей 00 копеек»
3. Формула 3 просто переводит число в текст: число = пропись
Вот формулы, которые пишут сумму прописью:
При необходимости формулу можно подогнать под нужный формат.
Как использовать данную формулу? Вы можете взять файл примера и внести в него свои данные, чтобы получить результат. Если же у Вас уже есть готовый файл с заполненными данными и Вам необходимо добавить возможность написания суммы прописью, то чтобы формула заработала, необходимо сделать некоторые подготовительные действия, а именно добавить справочники, которые использует формула. В данном примере справочники заданы как именованные диапазоны (это решение хорошо тем, что пользователь эти диапазоны не видит на листах и соответственно не сможет лишний раз что-то испортить).
Итак, нам необходимо сделать следующие справочники:
Имя диапазона: n_1 Диапазон: =
Имя диапазона: n_2 Диапазон: =
Имя диапазона: n_3 Диапазон: =
Имя диапазона: n_4 Диапазон: =
Имя диапазона: n_5 Диапазон: =
Имя диапазона: n0 Диапазон: =»000000000000″&ПСТР(1/2;2;1)&»00″
Имя диапазона: n0x Диапазон: =ЕСЛИ(n_3=1;n_2;n_3&n_1)
Имя диапазона: n1x Диапазон: =ЕСЛИ(n_3=1;n_2;n_3&n_5)
Имя диапазона: мил Диапазон: =
Имя диапазона: тыс Диапазон: =
Чтобы создать справочник таких диапазонов, переходим на вкладку «Формулы» — «Диспетчер имен«:
В открывшемся окне нажимаем кнопку «Создать» и в форме вводим данные первого диапазона из таблицы:
Далее таким же образом вводим все остальные диапазоны из таблицы:
Преобразование с помощью макросов Excel
Можно написать собственную функцию, которая произведет конвертацию суммы прописью. Нажмите сочетание ALT+F11 и в открывшемся разработчике Excel VBA вставьте новый модуль. В него добавьте следующий код.
Function SUMMPROPIS(n As Double) As String Dim Chis1, Chis2, Chis3, Chis4, Chis5 As Variant Chis1 = Array("", "один ", "два ", "три ", "четыре ", "пять ", "шесть ", "семь ", "восемь ", "девять ") Chis2 = Array("", "десять ", "двадцать ", "тридцать ", "сорок ", "пятьдесят ", "шестьдесят ", "семьдесят ", "восемьдесят", "девяносто ") Chis3 = Array("", "сто ", "двести ", "триста ", "четыреста ", "пятьсот ", "шестьсот ", "семьсот ", "восемьсот ", "девятьсот ") Chis4 = Array("", "одна ", "две ", "три ", "четыре ", "пять ", "шесть ", "семь ", "восемь ", "девять ") Chis5 = Array("десять ", "одиннадцать ", "двенадцать ", "тринадцать ", "четырнадцать ", "пятнадцать ", "шестнадцать ", "семнадцать ", "восемнадцать ", "девятнадцать ") If n <= 0 Then SUMMPROPIS = "ноль" Exit Function End If cifr = Retclass(n, 1) des = Retclass(n, 2) hund = Retclass(n, 3) thous = Retclass(n, 4) desthous = Retclass(n, 5) hundthous = Retclass(n, 6) mil = Retclass(n, 7) desmil = Retclass(n, 8)Select Case desmil Case 1 mil_txt = Chis5(mil) & "миллионов " GoTo www Case 2 To 9 desmil_txt = Chis2(desmil) End Select Select Case mil Case 1 mil_txt = Chis1(mil) & "миллион " Case 2, 3, 4 mil_txt = Chis1(mil) & "миллиона " Case 5 To 20 mil_txt = Chis1(mil) & "миллионов " End Select www: hundthous_txt = Chis3(hundthous) Select Case desthous Case 1 thous_txt = Chis5(thous) & "тысяч " GoTo eee Case 2 To 9 desthous_txt = Chis2(desthous) End Select Select Case thous Case 0 If desthous > 0 Then thous_txt = Chis4(thous) & "тысяч " Case 1 thous_txt = Chis4(thous) & "тысяча " Case 2, 3, 4 thous_txt = Chis4(thous) & "тысячи " Case 5 To 9 thous_txt = Chis4(thous) & "тысяч " End Select If desthous = 0 And thous = 0 And hundthous <> 0 Then hundthous_txt = hundthous_txt & " тысяч " eee: hund_txt = Chis3(hund) Select Case des Case 1 cifr_txt = Chis5(cifr) GoTo rrr Case 2 To 9 des_txt = Chis2(des) End Select cifr_txt = Chis1(cifr) rrr: SUMMPROPIS = desmil_txt & mil_txt & hundthous_txt & desthous_txt & thous_txt & hund_txt & des_txt & cifr_txt End Function Private Function Retclass(M, I) Retclass = Int(Int(M - (10 ^ I) * Int(M / (10 ^ I))) / 10 ^ (I - 1)) End Function
Теперь эту функцию можно вызвать обычным путем и получить сумму прописью. Она находится в разделе функций Excel «Определенные пользователем». В качестве аргумента укажите адрес с числом. Перевод в сумму прописью осуществляется только для целых чисел. Дробное число требует дополнительной формулы:
=SUMMPROPIS(A7)&" руб. "&ТЕКСТ((A7-ЦЕЛОЕ(A7))*100;"00")&" коп."
Вместо ячейки A7 подставляйте свой адрес. Копейки в таком исполнении будут выводиться в виде числа. Мы рассмотрели все способы представления суммы прописью в Excel. Выбирайте для себя самый удобный и пользуйтесь с удовольствием!
Включаем надстройку NUM2TEXT в меню Excel
Перед созданием ячеек с суммой прописью нужно скачать надстройку для Microsoft Excel. Надстроек нет на официальном сайте разработчиков, но ее можно загрузить с других страниц
Важно проверять файлы, которые загружаются на компьютер с помощью антивирусной программы, иначе есть риск заразить систему вирусом
Также обратите внимание на разрешение файла. Правильное разрешение – XLA
Если надстройка уже скачана, поместите ее в папку, где ее будет несложно найти. Это пригодится при подключении. Далее разберем включение надстройки по шагам:
- Необходимо открыть вкладку «Файл» в документе Эксель и выбрать раздел «Параметры». Обычно он находится в нижней части списка разделов.
1
- Откроется окно параметров, в левой части которого находится меню. Выбираем раздел «Надстройки». Если после этого взглянуть в правую часть экрана, можно увидеть, что некоторые из них предустановлены, но они не подходят для упрощенной записи суммы прописью.
Внизу находится подраздел «Управление» с кнопкой «Перейти». Кликаем по этой кнопке.
2
- На экране появится окно с доступными надстройками. Если необходимо, можно включить некоторые из них, но цель в данном случае – кнопка «Обзор».
3
- Находим файл с надстройкой через окно обзора. Кликаем по нему, чтобы выбрать, и нажимаем «ОК».
4
- В списке надстроек появится пункт «Num2Text». Рядом с ним должна сразу стоять галочка. Если ее нет в окошке, нужно выбрать эту надстройку вручную и нажать «ОК».
5
Подключение надстройки «Сумма прописью» завершено, теперь можно ею воспользоваться.
Сумма прописью в Excel
Сумма прописью в Excel – одна из возможностей, которая не реализована в стандартном Excel. Почему, я скажу позже свои доводы. А пока для чего она нужна: прописью записанная сумма позволяет не ошибиться со знаком после запятой, не принять одну сумму за другую. Еще такая запись лучше выглядит по сравнению с набором цифр. Те, кто работает с цифрами, со временем и печатает документы с использованием таких цифр, нуждаются в таком инструменте.
К счастью, решений проблемы масса, их можно найти в инете и причем бесплатно:
- Формулы. Это громоздко, но вполне используемо. Тем более, что если вы разбираетесь в этой формуле, сможете сами поправить ее: разрядность, склонение и т.д.
- Функции. На мой взгляд, лучшее решение. Позволяет не воевать с функцией, диапазонами и книгами. Просто добавить надстройку и использовать функцию Суммапрописью (или любую другую).
При выборе нужного решения я бы рекомендовал определиться, что именно вам нужно:
- Просто число или единица времени, денег и т.д.?
- Мужской род единицы или женский?
- Сколько разрядов поддерживать?