Num2text.xla
Содержание:
- Через функцию
- С помощью пользовательской функции
- Надстройка: цена прописью в Excel
- Формула суммы прописью в Excel — как написать число
- Создание сумм прописью с помощью формул
- Числа прописью с копейками заглавными или строчными буквами в Excel
- Как установить
- Использование программы печати суммы прописью в Excel (Ексел)
- Сумма прописью в Microsoft Excel
- Прописываем функцию вручную
- Как сумму перевести в текст в Excel2007
- С помощью пользовательской функции
- Функция сумма прописью на русском языке
- Sumprop
Через функцию
Среди тех решений, что я нашел, мне понравилась вот эта надстройка . Правда, там файл надо скачивать через пару лишних этапов, поэтому можете его скачать здесь .
Как пользоваться надстройкой:
- Открываете Excel. Параметры Excel/Надстройки/Кнопка “Перейти”.
- В открывшемся окне нажимаете “Обзор. ”
- Выбираете ту папку, куда вы скачали файл sumprop.xla и нажимаете “Ок”.
- Нажимаете на нужную вам ячейку и выбираете функции. Там будут новые для вас функции. Что хорошо в этой настройке – можно выбрать денежную валюту, а можно просто число. Причем в денежной валюте прописаны сразу и копейки (центы). Я не говорю, что это самая лучшая надстройка, их много. Я просто описываю первую устроившую меня.
С помощью пользовательской функции
Как мой взгляд, это самое оптимальное и простое, относительно конечно, решение поставленного вопроса. Вы просто включаете функцию и пользуетесь ее с удовольствием.
Для этого вам необходимо выполнить некоторые действия. Сначала скачиваете файл надстройки здесь. После, переносите его в папку AddIns, которую можно найти по пути C:Documents and SettingsUserApplication DataMicrosoftAddIns, только вы вместо «User» подставляете имя вашего пользователя Windows. Еще может возникнуть проблема в отображении папки «Application Data», она может быть скрыта, тогда вам в настройках «Свойства папки» нужно активировать пункт «Показать скрытые файлы и папки». Теперь собственно и приступим к включении этой надстройки. В Excel выбираем «Файл» — «Параметры» — «Надстройки». В диалоговом окне «Настройки» ставим галочку напротив включаемой надстройки «Сумма Прописью» и нажимаем «ОК». Следующим шагом, ставим курсор на нужную ячейку и вызываем «Мастер функций». В разделе «Категория» выбираем пункт «Определенные пользователем» и теперь весть список встроенных функций по написанию сумм прописью нам доступен. Кстати как видите, доступен даже выбор функций в разрезе валют. Сразу замечу, что надстроек бывает много, есть и более расширенные, но эта меня полностью устраивает, вот я ее и описываю. В результате мы получаем возможность получить следующие данные:
Надстройка: цена прописью в Excel
В большинстве случаев ее использование в качестве надстройки наиболее удобно, хотя иногда возникают проблемы подключения надстройки.
Нужно поместить полученный файл sumprop.xla в папку, в которой хранятся дополнительные надстройки. Конкретный путь к этой папке зависит от версии Excel, но скорее всего, в Windows 7, он будет похожим на этот:
C:\Documents and Settings\User\Application Data\Microsoft\AddIns
где: вместо User следует подставить имя пользователя Windows.
Дополнительное неудобство вызывается тем, что папка Application Data может быть скрыта, то есть не видна при просмотре в проводнике Windows.
Проще всего для размещения скачанного файла в нужной папке нужно:
- Выбрать в Excel команду меню Сервис — Надстройки и в появившемся диалоге нажать кнопку Обзор. Будет открыт диалог выбора файла с надстройкой, причем текущей окажется нужная вам папка.
- Запустите проводник Windows и перейдите в нем к папке, в которой находится скачанный ранее из интернета файл. Перетащите с помощью мыши значок файла из окна проводника в открытый диалог. Теперь файл с нужной надстройкой находится в нужной папке.
- Щелкните на нем мышью и нажмите кнопку OK, чтобы закрыть диалог. В списке доступных надстроек должна появиться строка Сумма Прописью.
- Установите флажок рядом с этой строкой и нажмите кнопку OK,
- После чего вы сможете использовать функцию печати суммы прописью в Excel.
Как использовать мастер функций, для работы с функциями вывода суммы прописью и числа прописью
Для этого вначале щелкните мышью на ячейке, в которую вы хотите вставить функцию, после чего откройте список доступных функций. В нем следует выбрать вариант Другие функции. Кроме того, для вызова функций можно нажать кнопку fx, расположенную в левой части строки формул. В ранних версиях программы аналогичная кнопка расположена на панели инструментов. Каким бы способом не вызван был мастер функций, в появившемся диалоге необходимо выбрать категорию Определенные пользователем. В списке функций данной категории должны находиться СуммаПрописью и ЧислоПрописью. Выбрав нужную функцию, нажмите кнопку OK, чтобы перейти к следующему диалогу мастера функций. В нем задаются аргументы, то есть вы должны ввести число, которое будет преобразовано в слова. Можно ввести непосредственно значение или сослаться на ячейку, в которой это значение расположено. Нажав кнопку OK, вы закроете диалог и вставите результат в текущую ячейку.
Формула суммы прописью в Excel — как написать число
Для вывода числа прописью в Excel можно создать формулу. Приведем пример:
Для ее использования вам необходимо указать несколько массивов Excel:
Просто скопируйте эту таблицу на лист Excel, а формулу вставляйте туда, где необходима сумма прописью. Вышеприведенная конструкция предназначена для ячейки A3. Не забудьте поменять адрес.
В англоязычном Excel формула суммы прописью будет выглядеть следующим образом:
SUBSTITUTE(PROPER(INDEX(n_4,MID(TEXT(A1,n0),1,1)+1)&INDEX(n0x,MID(TEXT(A1,n0),2,1)+1,MID(TEXT(A1,n0),3,1)+1)&IF(-MID(TEXT(A1,n0),1,3),»миллиард»&VLOOKUP(MID(TEXT(A1,n0),3,1)*AND(MID(TEXT(A1,n0),2,1)-1),мил,2),»»)&INDEX(n_4,MID(TEXT(A1,n0),4,1)+1)&INDEX(n0x,MID(TEXT(A1,n0),5,1)+1,MID(TEXT(A1,n0),6,1)+1)&IF(-MID(TEXT(A1,n0),4,3),»миллион»&VLOOKUP(MID(TEXT(A1,n0),6,1)*AND(MID(TEXT(A1,n0),5,1)-1),мил,2),»»)&INDEX(n_4,MID(TEXT(A1,n0),7,1)+1)&INDEX(n1x,MID(TEXT(A1,n0),8,1)+1,MID(TEXT(A1,n0),9,1)+1)&IF(-MID(TEXT(A1,n0),7,3),VLOOKUP(MID(TEXT(A1,n0),9,1)*AND(MID(TEXT(A1,n0),8,1)-1),тыс,2),»»)&INDEX(n_4,MID(TEXT(A1,n0),10,1)+1)&INDEX(n0x,MID(TEXT(A1,n0),11,1)+1,MID(TEXT(A1,n0),12,1)+1)),»z»,» «)&IF(TRUNC(TEXT(A1,n0)),»»,»Ноль «)&»рубл»&VLOOKUP(MOD(MAX(MOD(MID(TEXT(A1,n0),11,2)-11,100),9),10),,2)&RIGHT(TEXT(A1,n0),2)&» копе»&VLOOKUP(MOD(MAX(MOD(RIGHT(TEXT(A1,n0),2)-11,100),9),10),,2)
Как видим, это не самый удобный способ преобразовать число в текст прописью в Excel.
Создание сумм прописью с помощью формул
Это вполне осуществимый вариант, но очень громоздкий. Формула, которая может самостоятельно преобразовывать числа в буковки и правильно орфографически написать сумму прописью получится очень большой. В случае, когда вы захотите упростить формулу, вам нужно будет отдельный блок формул, который буде и заниматься всеми преобразованиями. Единственное преимущество от использования формулы, это когда вы разберетесь с ней, то самостоятельно сможете ее изменять: разрядность, валюту, склонение и т.п.
Ради общего интереса я предоставлю вам пример файла с работающей формулой, которую я нашёл на excelworld.ru, поскольку самостоятельно формульным решением задачи я не занимался, но считаю нужным предоставить весь наработанный или собранный материал. Скачать пример можно по этой ссылке.
Числа прописью с копейками заглавными или строчными буквами в 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 в строке формул, категория Определенные пользователем)
Как установить
Установить NUM2TEXT для нашего офисного пакета очень просто. Делается это следующим образом:
После этого добавленный инструмент можно будет использовать, а для того, чтобы проверить, работает ли он, делаем следующее:
- Выделяем какую-либо ячейку в таблице Excel, а потом вписываем в нее значение.
- Выделив вторую ячейку, выбираем инструмент «Вставить функцию» (кнопка, расположенная немножко левее, чем инструмент для ввода формул).
- Выбираем «Сумма прописью» и кликаем «ОК».
- В текстовом поле «Аргументы» устанавливаем указатель мыши на «Сумма» и указываем наш аргумент.
После этого число, которое мы указали, должно отобразиться прописью. Соответственно, если это произошло, значит мы все сделали правильно.
Использование программы печати суммы прописью в Excel (Ексел)
Работа с ней ведется через использование функций Excel. Введите в первую ячейку третьей строки формулу =СуммаПрописью(836) и вы увидите результат вычислений:
Введите после этого в первую ячейку второй строки формулу = СуммаПрописью (A1). Так как пока в ячейку A1 ничего не введено, то результатом будет:
После того, как в первую ячейку будет введено число, например, 3743917034,51, результат изменится на:
При вводе другого числа результат соответственно изменится. Кроме печати суммы прописью доступна стала и еще одна дополнительная функция. Введите в первую ячейку число 582,43, а в любую свободную ячейку формулу =ЧислоПрописью(A1) . Результатом будет пятьсот восемьдесят два , то есть первая буква уже не прописная, копейки отброшены и нет названия рублей. Также имеется возможность вывода суммы для названий женского рода – пятьсот восемьдесят две . Для этого следует использовать формулу =ЧислоПрописью(A1;ЛОЖЬ) . Если второй параметр опущен, выводится сумма для названий мужского рода.
Сумма прописью в Microsoft Excel
Использование надстройки
от 11 до ‘ — если «семнадцать долларов»)) Edinicy(18) Integer: Dim txt, «м»: Двадцатка = 1, 2), «тысяча листа этой книги
скопируйте и вставьте туда файла примера ввставляем текст в любую. Сюда можно записать документов часто требуется
-
похоже, в чёмРеализовано тремя вариантами: то если выABS_123()
-
< 0 Then 19 то перескакиваем конец триады от
-
= «восемнадцать «: Sclon_Tys As String «один » Case «, «тысячи «,
-
обычным способом - текст этой функции: новую книгу, и открытую книгу «Как обычное число. Оно прописать сумму не собака порылась!
-
1. Формулой с найдете ошибки вработает не правильно, GoTo 11 ЧислоПрописьюВалюта на единицы, иначе
-
11 до 19 EdinicyPoslednie(18) = IIf(Valuta ‘——————————————— Application.Volatile ‘——————————————— «ж»: Двадцатка = «тысяч «) ‘Единицы’ через мастер функцийFunction СУММАПРОПИСЬЮ(n As сохраните ее в значение» (Главная/ Буфер
-
в выделенной ячейке только числом, ноНу так предупреждать ссылкой на дополнительный написании числительных, прошу это уже обсуждалось. = txt + — формируем десятки
-
то перескакиваем на = 0, «восемнадцать Edinicy(0) = «»: «одна » Case Поз = 10 (кнопка Double) As String директорию C:\Documents and обмена/ Вставить/ Вставить отобразиться в формате и прописью. Конечно,
-
же надо было, лист сообщить, внесу соответствующие Попробуйте ввести 142,16 » » + Case 4 ‘ единицы, иначе - евро», IIf(Valuta = EdinicyPoslednie(0) = IIf(Valuta «с»: Двадцатка = strЕдиницы = Сотни(Mid(strЧисло,f
-
Dim Nums1, Nums2, Settings\имя_пользователя\Application Data\Microsoft\Excel\XLStart (для как значение). записанной прописью денежной это занимает гораздоEvgeniyaD2. Формулой с поправки и посмотрите на CStr(c) + d — единицы тысяч формируем десятки Case
1, «восемнадцать рублей», = 0, «евро», «одно » End Поз, 1)) strЕдиницыx Nums3, Nums4 As XP) под именемЭто не всегда удобно. суммы в рублях больше времени, чем, а не морочить использованием именДля начала, сумма результат. Формула, которую
- 11: End Function vl = Mid(SumInt, 10 ‘ - «восемнадцать долларов»)) Edinicy(19) IIf(Valuta = 1, Select Case «2»: = strЕдиницы &в строке формул,
Variant Nums1 = PERSONAL.XLSB. Хочется по аналогии и копейках. обычное написание с голову людям.3. с помощью прописью без использования предоставилЕсли мы указываем число единицы миллиардов vl = «девятнадцать «: «рублей», «долларов»)) Edinicy(1) Select Case Sex Десятки(Mid(strЧисло, Поз + категория
Array(«», «один «,Если Личная книга макросовМожно в поле занести помощью цифр. ЕслиС Вашим фальшивым UDF макросов.jakim
(от 0 до shag > 2 = Mid(SumInt, shag, EdinicyPoslednie(19) = IIf(Valuta = «один «: Case «м»: Двадцатка 1, 2), «м»)Определенные пользователем «два «, «три уже была ранее
VBA написать что
lumpics.ru>
Прописываем функцию вручную
Формула СУММА_ПРОПИСЬЮ в Excel может быть записана не только через «Мастер функций», но и вручную. Порой это даже удобнее выполнять. Для начала рассмотрим синтаксис функции, а выглядит он следующим образом:
Мы видим, что преобразование числа выполняется путем ввода формулы в строке функций. Вам необходимо ввести непосредственно само название, после чего в скобках ввести цифру, которую нужно преобразовать, или координаты ячейки, например, A2. На изображении выше приведен пример выполнения данных действий. Как видите, в строке формул введена функция СУММА_ПРОПИСЬЮ, которая ссылается на ячейку A2, а в ячейке, которая была выделена перед началом ее ввода, появился прописной вариант числа из ячейки A2. Все довольно просто. Как вы понимаете, на A2 можно не использовать функции, а в скобочках прописать лишь число, которое хотите превратить в текст.
Как сумму перевести в текст в Excel2007
. Сюда можно записать в 2003.Юрий М тысяча рублей 00 «А» в ячейке после запятой. rrr: ‘формируем итоговую:Wasp49 десятки vl = txt = txt = «миллиона «: = 0, «два «ж»: Двадцатка = ИмяРазряда(strМиллионы, Mid(strЧисло, ПозИНДЕКС(PERSONAL.XLSB!Единицы;ОСТАТ(A1;1000)+1)&» руб. «&ТЕКСТ((A1-ЦЕЛОЕ(A1))*100;»00»)&»
прерогатива VBA. обычное число. ОноЯ сделал так:: А что -
копеек. А56 работает нормально.4. Делает первую строку СУММАПРОПИСЬЮ =Аля, был человек, который: «Спасибо большое, кажется Mid(SumInt, shag, 1)
& Desyatki(vl) ‘ mlrd(2) = «миллиарда евро», IIf(Valuta =
«одна » Case + 1, 2), коп.»);»ноль руб. 00
Тем не менее, можно в выделенной ячейке распаковал post-106917 и нашу «Копилку» обворовали?GuestEvgeniyaD букву прописной, остальные decmil_txt & mil_txt
сам с собой нашла!!! А без If vl = — если конец » Desyatki(3) = 1, «два рубля», «с»: Двадцатка =
«миллион «, «миллиона коп.») предложить следующее решение отобразиться в формате
скопировал файл в Там нет Суммы: Стандартной функции нет.
: MCH, ясно. Отображается строчные. & sottys_txt &
говорил, но по макросов, с помощью «1» And Mid(SumInt, триады от 11 «тридцать «: Sotni(3) «два доллара»)) Edinicy(3) «одно » End «, «миллионов «)
Формула отобразит число прописью. с помощью обычных записанной прописью денежной C-DocumSet-User-ApplicData-Microsoft-AddIns. Затем в прописью?Есть только пользовательские.
у нас по-разному.5. Если число dectys_txt & tys_txt делу - какой-нибудь формулы этого shag + 1,
до 19 то = «триста «: = «три «: Select Case «2»: ‘Тысячи’ Поз = Ячейки, содержащие исходное формул: суммы в рублях рабочет документе (счете,Guest
Поищите на форуме Alex_ST, «гарантированный» просто целое, например 121, & sot_txt &Guest
сделать нельзя?» 1) <> 0
перескакиваем на единицы, tys(3) = «тысячи
EdinicyPoslednie(3) = IIf(Valuta Select Case Sex 7 strТысячи =
число и формулу,разместить в Личной книге и копейках. накладной) в любой: не такая
самостоятельно — примеры забыла удалить. Я то результат будет dec_txt & ed_txt: работает и сПопробую найти у Then GoTo 10 иначе — формируем «: mln(3) = = 0, «три
Case «м»: Двадцатка Сотни(Mid(strЧисло, Поз, 1))
можно перенести в макросов (PERSONAL.XLSB) вспомогательныеМожно в поле занести нужной ячейке пишуЮрий М
выкладывались неоднократно. имела ввиду именно «Сто двадцать один», End Function ‘вспомогательная офисом 2к10 себя в файлах Else txt = десятки Case 7 «миллиона «: mlrd(3) евро», IIf(Valuta = = «два « strТысячи = strТысячи любое место в диапазоны, содержащие некоторые адрес любой ячейки. =СуммаПрописью(), где в: Что не такая?ytk5kyky
ячейку а56. Но, если дробное - функция для выделенияMCH пропись на русском txt & Desyatki(vl) ‘ — единицы = «миллиарда « 1, «три рубля», Case «ж»: Двадцатка & Десятки(Mid(strЧисло, Поз книге или даже числа прописью (от Это делается либо скобках указываю суммуdude: Я уж было видимо, зависит от 121,22, то результат из числа разрядов: Функция кривая, на языке без маросов.
‘ — если миллионов vl =
Desyatki(4) = «сорок «три доллара»)) Edinicy(4) = «две « + 1, 2), в другую книгу. 0 до 999); путем ручной записи или даю ссылку
: сумма прописью подумал, что никто программы. получится «Сто двадцать
Private Function Class(M, числах 0, 1000000, есть на английском конец триады от Mid(SumInt, shag, 1) «: Sotni(4) = = «четыре «: Case «с»: Двадцатка «ж») strТысячи =Чтобы еще больше приблизитьсясоздать формулу, переводящую в координат этой ячейки, на ячейку. Все(без арабской вязи)
этот вопрос неAlex_ST одна целая двадцать I) Class = 1000000000 и др. (но там все
11 до 19 If shag > «четыреста «: tys(4) EdinicyPoslednie(4) = IIf(Valuta = «Два « strТысячи & ИмяРазряда(strТысячи, к идеалу создадим текст любое число либо простым кликом работает!Владимир задаст. Большой был: Да похоже, что две сотых». Int(Int(M — (10 дает не правильное проще — нет то перескакиваем на 2 Then If = «тысячи «: = 0, «четыре End Select Case
planetaexcel.ru>
Mid(strЧисло, Поз +
- В excel преобразовать число в время в
- Excel 2016 сумма прописью
- Excel преобразовать в число
- Преобразовать дату в число в excel
- В excel перевод числа в текст
- Excel число преобразовать в строку
- Excel как число преобразовать в текст
- Excel преобразовать дату в текст
- Как в excel выделить число из текста
- Как преобразовать текст в число эксель
- Как в excel число сделать прописью
- Функция в excel преобразовать в число
С помощью пользовательской функции
Как мой взгляд, это самое оптимальное и простое, относительно конечно, решение поставленного вопроса. Вы просто включаете функцию и пользуетесь ее с удовольствием.
Для этого вам необходимо выполнить некоторые действия. Сначала скачиваете файл надстройки здесь. После, переносите его в папку AddIns, которую можно найти по пути C:Documents and SettingsUserApplication DataMicrosoftAddIns, только вы вместо «User» подставляете имя вашего пользователя Windows. Еще может возникнуть проблема в отображении папки «Application Data», она может быть скрыта, тогда вам в настройках «Свойства папки» нужно активировать пункт «Показать скрытые файлы и папки».
В Excel 2007 макросы можно включить, если зайти в параметры Excel (Круглая кнопка «Офис»->Параметры Excel).
В окне безопасности слева выбираем пункт «Параметры макросов», а в середине устанавливаем позицию «Включить все макросы». Нажимаем «ОК» во всех окнах параметров программы Excel.
Далее вам понадобится сам файл надстройки с преобразованием числа в пропись.(Скачать файл Num2Text).
Полученный файл надстройки, необходимо поместить в папку с дополнительными «библиотеками» Microsoft Office. В различных версиях офисного пакета расположение подобных «библиотек» немного различается, но общий смысл остается тем же – все они помещаются в папку «Library». В Excel 2003 полный путь к папке – «C:Program FilesMicrosoft OfficeOFFICE11Library», в Excel 2007 полный путь к папке – «C:Program FilesMicrosoft OfficeOFFICE12Library»
Обратите внимание, в этой папке уже могут быть другие файлы с расширением «xla»
Откроется окно со списком надстроек. Отметьте галочкой нужную (в данном случае Num2Text) и нажмите кнопку «ОК».
Перемещаемся в раздел «Параметры».
В активном окне параметров переходим в раздел «Надстройки».
Открывается небольшое окно надстроек Excel. Жмем на кнопку «Обзор…».
Запускается Мастер функций. В полном алфавитном перечне функций ищем запись «Сумма_прописью». Её раньше не было, но она появилась тут после установки надстройки. Выделяем эту функцию. Жмем на кнопку «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 копеек»
После того, как она набрана в нужной ячейке, нам остается только нажать Enter, чтобы получить результат.
Или же мы можем вместо числа указать адрес ячейки: =Сумма_прописью(B3) .
После нажатия клавиши Enter мы также получаем результат в виде суммы прописью в ячейке с формулой.
Функция сумма прописью на русском языке
После установки надстройки VBA-Excel добавится функционал для вставки суммы прописью. Он содержит удобную форму для ввода (см. рисунок справа), а также функцию СУММАПРОПИСЬЮ, которой можно пользоваться так же как и любой встроенной в Excel.
Вы сможете указать число прописью в любом падеже, а также выбрать формат вывода, который необходим в конкретном случае.
Вы можете указать сумму прописью в договоре в рублях (как с копейками так и без), в долларах США или евро (с центами или без). Помимо суммы договора можно прописывать прописью и срок в календарных или рабочих днях. Можно указывать количество товара прописью в штуках.
Функционал достаточно гибкий и позволяет настраивать отображение скобок, формат дробной части, указывать сумму с заглавной или прописной буквы и многое другое.
Вставка суммы прописью через пользовательскую форму
Наиболее простой способ вставить сумму прописью – это заполнить специальную форму.
- Выберите ячейку, в которую необходимо вставить число прописью.
- На вкладке VBA-Excel нажмите команду Сумма прописью и выберите язык Русский.
- Появится диалоговое окно для выбора параметров функции. Заполните ее так как необходимо Вам. Настройки автоматически сохраняются, чтобы не пришлось повторять действия в следующий раз.
- Нажмите Вставить текстом, тогда сумма прописью будет вставлена в ячейку как текст. Нажмите Вставить формулой в случае если в ячейку должна быть вставлена формула, в этом случае сумма прописью будет автоматически изменяться при редактировании числа.
Второй способ вставить сумму прописью – это ввести формулу в ячейку: =СУММАПРОПИСЬЮ(A1), где A1 – ссылка на ячейку с формулой.
Далее рассмотрим подробнее синтаксис функции.
Подробный синтаксис функции
Для использования функции не обязательно постоянно вызывать форму с параметрами. Функцию можно использовать также как и прочие функции Excel. Функция имеет следующие переменные:
=СУММАПРОПИСЬЮ(Число; ; ; ; ; ; )
Квадратные скобки означают что переменная не обязательная, в этом случае используется значение по умолчанию.
- Число – ссылка на ячейку или число (не обязательно в числовом формате), которое необходимо написать прописью.
- – число от 1 до 6, определяющее падеж
- Именительный (по умолчанию если параметр не указан)
- Родительный
- Дательный
- Винительный
- Творительный
- Предложный
– число от 0 до 8 для добавления после суммы прописью в нужном падеже тип данных
- Ничего (по умолчанию если параметр не указан)
- Рубли
- Доллары США
- Евро
- Календарные дни
- Рабочие дни
- Дни
- Штуки
- Целое + дробная часть
– значение 0 или 1, которое указывает на необходимость записи дробной части числа прописью
- Не выводить прописью дробную часть числа (по умолчанию)
- Указать прописью также и дробную часть числа
– значение 0 или 1, которое указывает на необходимость дублирования числа перед суммой прописью
- Скрыть число перед суммой прописью
- Продублировать числовое значение суммы прописью (по умолчанию)
– значение 0 или 1, которое указывает на необходимость записывать сумму прописью в скобках
- Убрать скобки из суммы прописью
- Поместить сумму прописью в скобки (по умолчанию)
– значение 0 или 1, которое указывает на необходимость делать первую букву суммы прописью заглавной
- Все буквы суммы прописью строчные
- Сделать первую букву заглавной (по умолчанию)
Разберем синтаксис функции на примерах:
Склонение числительных по падежам.
Добавление типа данных после указания суммы прописью
Обратите внимание, что если вторая переменная (падеж) не задана, то указывается по умолчанию в именительном падеже
Как прописать дробную часть числа с помощью функции.
Различные форматы вывода суммы прописью.
Sumprop
Установка данного модуля происходит точно так же, как в описанном выше способе, только на этот раз выбираем другой файл.
Ставим галочку возле новой надстройки и нажимаем на кнопку «OK».
После этого в вашем редакторе появится еще несколько новых функций. Рассмотрим их всех.
Работа с формулами
Для этого нужно сделать следующие действия.
- Первым делом создадим наглядную таблицу. В одном столбце у нас будут цифры, во втором – результат. Для демонстрации возможностей будем использовать дробные числа.
- Переходим первую пустую ячейку и нажимаем на кнопку «Fx».
В появившемся окне выберите категорию «Определенные пользователем». Новые функции будут именно там.
Будем вставлять поочередно. Именно в той хронологии, как они идут в списке.
СуммаПрописью
- Выберите соответствующий пункт и нажмите на кнопку «OK».
- В появившемся окне нужно вставить аргумент. Для этого достаточно кликнуть на ячейку с числом.
- Благодаря этому адрес подставится автоматически. Для продолжения нажмите на кнопку «OK».
- В результате этого вы увидите следующее.
СуммаПрописьюГривны
- Выделяем следующую строчку и кликаем на иконку вставки функции.
- На этот раз выбираем вторую функцию. Для вставки нажимаем на кнопку «OK».
- Затем кликаем на следующее число.
- После автоматической подстановки нажмите на кнопку «OK».
- Результат будет следующим.
СуммаПрописьюДоллары
- Переходим на третью строчку и кликаем на иконку «Fx».
- Выбираем «долларовую» функцию и нажимаем на «OK».
- Указываем соответствующий аргумент.
- Кликаем на «OK».
- Благодаря этому целое число отображается в долларах, а дробное – в центах.
СуммаПрописьюЕвро
- Переходим на четвертую строчку и вызываем окно вставки уравнения.
- Указываем функцию для «Евро».
- Кликаем на соответствующий аргумент.
- Нажимаем на кнопку «OK».
- Результат будет следующим.
ЧислоПрописью
Преимущество данного модуля в том, что вы можете осуществить преобразование без дополнительных денежных приставок.
- Перейдите на последнюю строчку и нажмите на иконку «Fx».
- Выберите последнюю функцию.
- В качестве аргумента укажите последнее оставшееся число.
- Для вставки нажмите на кнопку «OK».
В результате проделанных действий, мы увидим следующую таблицу.