Как преобразовать число в текст сумма прописью в excel
Содержание:
- Как сумму перевести в текст в Excel2007
- Прописать формулу для суммы прописью
- Как сумму перевести в текст в Excel2007
- Преобразование с помощью макросов Excel
- С помощью VBA
- Использование надстройки
- Применение функции «ЗНАЧЕН».
- Num2Text
- Ручной ввод функции в ячейках
- СУММА ПРОПИСЬЮ в Excel 2007, 2010 Макрос для бухгалтеров на русском
Как сумму перевести в текст в Excel2007
или других языках. имела ввиду именно копируется. в любую ячейку, чтобы открыть редактор пишем в любойEnd With: Когда только знакомился: ВСЁ, что Вам Excel меню Надстройки 26450.00 или 26450,00& & Sotni(vl) Case ‘ — единицы «: tys(5) = = «семь «: «пятнадцать » Case
Case n Case Так как по ячейку а56. Но,MCH
листа этой книги Visual Basic свободной ячейке листаEnd Function с Excel и надо есть на — кнопка Обзор,
excel русский? 2 ‘ - миллионов vl =
«тысяч «: mln(5) EdinicyPoslednie(7) = IIf(Valuta «16»: Двадцатка =
0: Сотни = умолчанию нет готовой видимо, зависит от: Сумма прописью на обычным способом -добавьте новый пустой модуль произвольное число. Выделяемvikttur
слово «макрос» было данном сайте: и покажите путьШмелька-шумелька десятки vl = Mid(SumInt, shag, 1) = «миллионов «:
= 0, «семь «шестнадцать » Case «» Case 1: функции, создадим свою
программы. русском (MSumProp) и через мастер функций
через меню любую другую ячейку.:
пугающе-страшным, нужно былонайти можно вот к распакованному файлу.: ну, если точно, Mid(SumInt, shag, 1) If shag > mlrd(5) = «миллиардов евро», IIf(Valuta =
«17»: Двадцатка = Сотни = «сто пользовательскую функцию сAlex_ST на украинском (MSumPropUkr) (кнопка
Insert — Module Кликаем по значкуНе усовершенствуя, просто написать автовывод суммы так: После этого в
то у меня If vl = 2 Then If » Desyatki(6) = 1, «семь рублей», «семнадцать » Case » Case 2: помощью макросов.: Да похоже, что языках, реализовано с
fскопируйте и вставьте туда«Вставить функцию» добавил ячейки прописью.
а вот, куда списке функций у
написано 26’450.00, т.к. «1» And Mid(SumInt,
(Mid(SumInt, shag - «шестьдесят «: Sotni(6) «семь долларов»)) Edinicy(8)
«18»: Двадцатка = Сотни = «двестиДля создания пользовательской функции, от версии Офиса помошью UDF
x текст этой функции:. Он расположен слеваAlex_STСмотрите на этот стоит зайти (это Вас появится «Сумма я такие настройки shag + 1, 2, 1) =
= «шестьсот «: = «восемь «:
«восемнадцать » Case » Case 3: которая сможет перевести как раз иОсобенности:
в строке формул,Function СУММАПРОПИСЬЮ(n As от строки формул.: Казанский, корявый образец, вдруг из найденного) прописью» В общем поставила :) 1) <> 0 0 And Mid(SumInt, tys(6) = «тысяч EdinicyPoslednie(8) = IIf(Valuta «19»: Двадцатка = Сотни = «триста число в текст не зависит.1. Работают до категория
Double) As StringЗапускается Мастер функций. Ввычисление при помощи кому-нибудь для чего-нибудьmak50 случае достаточно будетexcel русский Then GoTo 10 shag — 1, «: mln(6) = = 0, «восемь «девятнадцать » End » Case 4: прописью , намМСН проверял Ваш 999 трлн.Определенные пользователем Dim Nums1, Nums2, полном алфавитном перечне Ворда, конечно, прикольно, понадобится.{/post}{/quote}: Спасибо, разбираюсь……..
просто указать ссылкуЮрий М
Else txt = 1) = 0 «миллионов «: mlrd(6) евро», IIf(Valuta = Select Десятки = Сотни = «четыреста нужно выполнить 3 файл на 2010,
2. Делают первую) или просто набрав Nums3, Nums4 As функций ищем запись
но столько ограничений…На сколько яАл) на нужную ячейку: Попробуйте поискать Сумма txt & Desyatki(vl) And vl = = «миллиардов « 1, «восемь рублей», Десятки & Двадцатка » Case 5: простых шага: я — на букву прописной, остальные
ее в ячейке Variant Nums1 =«Сумма_прописью»- должен быть понимаю, это до: Увожаемые, а можно
с числом в прописью ‘ — если «0») Then GoTo Desyatki(7) = «семьдесят «восемь долларов»)) Edinicy(9) End Function Function Сотни = «пятьсотОткрыть редактор макросов ALT+F11. 2003. Результат одинаковый строчные. вручную и указав Array(«», «один «,. Её раньше не открыт Ворд (уж 999 999 тысяц, сделать это без первом поле. Иdude конец триады от 10 End If «: Sotni(7) =
planetaexcel.ru>
Прописать формулу для суммы прописью
формула будет продолжать) в текст: например: четыреста сорок. IBM.: Да похоже, что1. Работают доСамойленко Михаил сдалRAN единицы If Mid(SumInt, txt = txt
= «девятьсот «: = «тринадцать «: Select End If 1) Case «4»: Десятки(Mid(strЧисло, Поз + decmil_txt & mil_txt работать, не смотря
=СЖПРОБЕЛЫ( четыре руб. 00Для того, чтобы проверитьСам такую в от версии Офиса 999 трлн.
сдал сдал: Вообще-то я про shag — 1, & Edinicy(vl) & tys(9) = «тысяч EdinicyPoslednie(13) = IIf(Valuta End Function Десятки = «сорок
1, 2), «м») & sottys_txt & на то, чтоИНДЕКС(Миллионы;ОСТАТ(ОТБР(B6/1000000);1000000)+1)&» «& коп.
как работает только свое время написал как раз и2. Делают первуюСандюк Валерий сдал поиск по сайту 1) <> 1
mln(vl) ‘числа в «: mln(9) = = 0, «тринадцатьМожно написать алгоритм макро «: n = strМиллиарды = strМиллиарды dectys_txt & tys_txt Личная книга макросовИНДЕКС(Тысячи;ОСТАТ(ОТБР(B6/1000);1000)+1)&» «&Иногда требуется записать число
что установленная надстройка на Паскале :-) не зависит. букву прописной, остальные
сдал сдал говорил. Кнопочка между
Or Mid(SumInt, shag диапозоне от 11 «миллионов «: mlrd(9) евро», IIf(Valuta = программы по-другому и Right(n, 1) Case & ИмяРазряда(strМиллиарды, Mid(strЧисло, & sot_txt & не пересылалась, т.е.ИНДЕКС(Единицы;ОСТАТ(B6;1000)+1)) прописью: 256 записать пишем в любойSkipМСН проверял Ваш строчные.Сурженко Александр не «Главная» и «Правила». — 1, 2) до 19 склоняются = «миллиардов «
1, «тринадцать рублей», еще сделать так, «5»: Десятки = Поз + 1, dec_txt & ed_txt
Ваши коллеги получившиеЗадача в принципе решена, как двести пятьдесят свободной ячейке листа: Сумма прописью файл на 2010,
3. Округляют до сдал сдал сдалMCH = «10» Then на «мільярдов» независимо ‘——————————————— On Error «тринадцать долларов»)) Edinicy(14) чтобы она дописывала «пятьдесят «: n 2), «миллиард «, End Function ‘вспомогательная файл, смогут с осталось только разместить
шесть. Набирать этот произвольное число. ВыделяемНиже вы найдете я — на целых копеек.Швец Алена сдал: Кстати, Сумма прописью vl = Mid(SumInt, от последнего числа
Resume Next SumInt = «четырнадцать «: валюту суммы прописью. = Right(n, 1)
«миллиарда «, «миллиардов функция для выделения ним работать как вспомогательные диапазоны в текст безумно скучно, любую другую ячейку. готовую пользовательскую функцию 2003. Результат одинаковый4. Функции получились сдал сдал из указанной ссылки shag, 1) Else триады Else txt = Int(SumBase) For EdinicyPoslednie(14) = IIf(Valuta Для этого создайте Case «6»: Десятки «) ‘Миллионы’ Поз из числа разрядов Вы. Личную книгу макросов кроме того легко Кликаем по значку на VBA, которая — на листе относительно небольшими поЮщенко Мария сдал не корректна vl = Mid(SumInt,
= txt & x = Len(SumInt) = 0, «четырнадцать Module2 и введите = «шестьдесят «:
excelworld.ru>
Как сумму перевести в текст в 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 преобразовать в число
Преобразование с помощью макросов 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. Выбирайте для себя самый удобный и пользуйтесь с удовольствием!
С помощью VBA
Вот еще один способ на любителя. Конечно создать сумму прописью в Excel с помощью макроса не самый распространённый способ, но им достаточно часто пользовались и пользуются до сих пор. Большой сложности он не представляет, вам нужно:
- Комбинацией горячих клавиш ALT+F11 вызвать редактор Visual Basic;
- С помощью меню «Insert» — «Module», создать пустой новый модуль;
- Скопировать предоставленный код макроса в тело модуля.
Получается готовая пользовательская функция VBA, которая умеет превращать любую сумму от 0 до 9 999 999 в ее текстовое воплощение, создается сумма прописью.
Код нужного макроса выглядит так:
Function СУММАПРОПИСЬЮ(n As Double) As String Dim Nums1, Nums2, Nums3, Nums4 As Variant Nums1 = Array(«», «один «, «два «, «три «, «четыре «, «пять «, «шесть «, «семь «, «восемь «, «девять «) Nums2 = Array(«», «десять «, «двадцать «, «тридцать «, «сорок «, «пятьдесят «, «шестьдесят «, «семьдесят «, _ «восемьдесят «, «девяносто «) Nums3 = Array(«», «сто «, «двести «, «триста «, «четыреста «, «пятьсот «, «шестьсот «, «семьсот «, _ «восемьсот «, «девятьсот «) Nums4 = Array(«», «одна «, «две «, «три «, «четыре «, «пять «, «шесть «, «семь «, «восемь «, «девять «) Nums5 = Array(«десять «, «одиннадцать «, «двенадцать «, «тринадцать «, «четырнадцать «, «пятнадцать «, «шестнадцать «, «семнадцать «, «восемнадцать «, «девятнадцать «) If n <= 0 Then СУММАПРОПИСЬЮ = «ноль» Exit Function End If ‘разделяем число на разряды, используя вспомогательную функцию Class ed = Class(n, 1) dec = Class(n, 2) sot = Class(n, 3) tys = Class(n, 4) dectys = Class(n, 5) sottys = Class(n, 6) mil = Class(n, 7) decmil = Class(n, 8) ‘проверяем миллионы Select Case decmil Case 1 mil_txt = Nums5(mil) & «миллионов « GoTo www Case 2 To 9 decmil_txt = Nums2(decmil) End Select Select Case mil Case 1 mil_txt = Nums1(mil) & «миллион « Case 2, 3, 4 mil_txt = Nums1(mil) & «миллиона « Case 5 To 20 mil_txt = Nums1(mil) & «миллионов « End Select www: sottys_txt = Nums3(sottys) ‘проверяем тысячи Select Case dectys Case 1 tys_txt = Nums5(tys) & «тысяч « GoTo eee Case 2 To 9 dectys_txt = Nums2(dectys) End Select Select Case tys Case 0 If dectys > 0 Then tys_txt = Nums4(tys) & «тысяч « Case 1 tys_txt = Nums4(tys) & «тысяча « Case 2, 3, 4 tys_txt = Nums4(tys) & «тысячи « Case 5 To 9 tys_txt = Nums4(tys) & «тысяч « End Select If dectys = 0 And tys = 0 And sottys 0 Then sottys_txt = sottys_txt & » тысяч « eee: sot_txt = Nums3(sot) ‘проверяем десятки Select Case dec Case 1 ed_txt = Nums5(ed) GoTo rrr Case 2 To 9 dec_txt = Nums2(dec) End Select ed_txt = Nums1(ed) rrr: ‘формируем итоговую строку СУММАПРОПИСЬЮ = decmil_txt & mil_txt & sottys_txt & dectys_txt & tys_txt & sot_txt & dec_txt & ed_txt End Function ‘вспомогательная функция для выделения из числа разрядов Private Function Class(M, I) Class = Int(Int(M — (10 ^ I) * Int(M / (10 ^ I))) / 10 ^ (I — 1)) End Function |
Сохраняете внесенные изменения и теперь можно пользоваться новой функцией, как и прочими, она отображается в «Мастере функций» в категории «Определенные пользователем» или же просто вручную ввести ее в ячейке указав какую сумму необходимо сделать прописной.
Но как видите, макрос пишет прописью суммы, только целые числа, а вот для получения еще и копеек, эту конструкцию нужно доработать использованием следующей функции:
=СУММАПРОПИСЬЮ(A3)&» руб. «&ТЕКСТ((A3-ЦЕЛОЕ(A3))*100;»00″)&» коп.»
Приставку «Module2» в моей формуле можете опустить, так как таким образом, программа разделяет 2 похожие формулы, одна от установленных надстроек, а вторая от макроса.
А на этом у меня всё! Я очень надеюсь, что всё о том, как ваши цифры сделать прописными вам понятно. Буду очень благодарен за оставленные комментарии, так как это показатель читаемости и вдохновляет на написание новых статей! Делитесь с друзьями прочитанным и ставьте лайк!
Не забудьте поблагодарить автора!
При заполнении различных финансовых документов часто требуется прописать сумму не только числом, но и прописью. Конечно, это занимает гораздо больше времени, чем обычное написание с помощью цифр. Если подобным образом нужно заполнить не одно, а много документов, то временные потери становятся огромными. Кроме того, именно в записи суммы прописью наиболее часто встречаются грамматические ошибки. Давайте выясним, как сделать так, чтобы числа прописью вносились автоматически.
Использование надстройки
В Эксель нет встроенного инструмента, который бы помогал автоматически переводить цифры в слова. Поэтому для решения поставленной задачи используют специальные надстройки.
Одной из самых удобных является надстройка 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».
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)
Имя диапазона: мил Диапазон: =
Имя диапазона: тыс Диапазон: =
Чтобы создать справочник таких диапазонов, переходим на вкладку «Формулы» — «Диспетчер имен«:
В открывшемся окне нажимаем кнопку «Создать» и в форме вводим данные первого диапазона из таблицы:
Далее таким же образом вводим все остальные диапазоны из таблицы:
Num2Text
Прежде чем приступить к дальнейшим действиям, вам необходимо скачать данную надстройку. Официального сайта в этом случае нет. Таких модулей в интернете довольно много.
После этого нужно сделать следующее:
- Зайдите в пункт меню «Файл».
- В появившемся окне перейдите в раздел «Параметры».
- Затем нажимаем на пункт «Надстройки».
- Кликните на кнопку «Перейти» (предварительно убедитесь, что рядом выбран пункт «Надстройки Excel»).
- После этого у вас появится окно, в котором можно вставить дополнительные файлы, чтобы редактор «узнал» новые функции. Нажмите на кнопку «Обзор».
- После этого укажите заранее скаченный файл и кликните «Открыть».
- Затем нужно поставить галочку около нового пункта и нажать на «ОК».
На этом этап подготовки завершен. Теперь Excel сможет делать перевод цифр в текстовый вид.
Создание простой формулы
Для того чтобы увидеть возможности новых функций, нужно сделать следующее:
- Перейдите на любую соседнюю ячейку. Кликните на иконку «Fx».
- В появившемся окне в разделе категории выберите пункт «Полный алфавитный перечень».
- Найдите там функцию «Сумма_прописью». Выберите её и нажмите на «OK».
- После этого появится окно, в котором нужно указать аргументы функции. Следует указать ячейку, значение которой должно писаться прописью. Для этого достаточно кликнуть на неё.
- Сразу после этого адрес ячейки подставится автоматически. Для продолжения кликните «OK».
- В результате этого вы увидите вашу сумму прописью. Вплоть до копеек. Благодаря этому можно переводить даже дробные числа.
- Попробуйте изменить ваше значение на любое другое. Сумма прописью изменится мгновенно.
Сумма ячеек
В финансовых отчетах необходимо считать сумму различных ячеек или столбцов. В этом случае формула немного усложняется. Рассмотрим, как это сделать.
- Проставьте цифры в 4 ячейки подряд.
- Кликните на ячейку, в которой вы работали до этого. Скопируйте формулу при помощи сочетания клавиш Ctrl+C.
- После этого перейдите в другую ячейку, чтобы создать новую формулу. Активируйте строку ввода уравнений.
- Нажмите на клавиатуре на кнопки Ctrl+V.
- Удаляем аргумент функции, то есть «C4» в нашем случае. Вместо этого в скобке пишем обычную формулу суммы, которая будет считать диапазон наших ячеек.
=Сумма_прописью(СУММ(A4:D4))
- В результате этого должно получиться следующее.
- Нажмите на клавиатуре на кнопку Enter. В итоге вы увидите, что сумма указанного диапазона значений отобразилась прописью.
У данного модуля есть большой минус – вы сможете работать только с российкими рублями. То есть, не получится сделать сумму прописью для узбекских сумов, украинских гривен, казахских тенге, американских долларов, белорусских рублей, английских фунтов и так далее. Язык поменять не выйдет. Для таких случаев существует альтернативный метод.
Ручной ввод функции в ячейках
Вместо того, чтобы проходить шаги с открытием «Менеджера функций» и поиском нужной функции, можно ввести формулу сразу в ячейку. Выясним, как заполнить таблицу без использования панели инструментов.
- Сначала нужно выбрать пустую ячейку, куда будет записана формула. Кликнем по ней дважды – внутри появится поле для ввода данных с клавиатуры.
- Запишем в пустое поле следующую формулу: =Сумма_прописью().
12
- В скобках нужно указать ячейку, содержимое которой будет записано словами.
13
- Нажимаем клавишу «Enter». В ячейках появится число или результат действия, выраженное прописью.
14
Есть возможность записать число словами без создания таблицы – для этого нужна только формула и начальное число или действие. Необходимо так же написать формулу в пустую ячейку, но в скобках, вместо обозначений по горизонтали и вертикали, написать число или выражение. Закрываем скобки и жмем «Enter» – в ячейке появляются нужные числительные.
15
СУММА ПРОПИСЬЮ в Excel 2007, 2010 Макрос для бухгалтеров на русском
Бухгалтеру при работе в Эксел при печати платежек, приходников, счетов-фактур, необходимо заполнять поля суммы прописью. Корпорация Майкрософт об этом не подумала, а Андрей Коцюбинский подумал. Он писал книги по компьютерной тематике, и среди них значительной популярностью пользовалась книга «Excel для бухгалтера в примерах». С этой книгой распространялся макрос для Excel, автоматизирующий печать суммы прописью в электронных таблицах: sumprop и sumprop.xla
Вот с сайта его веб-студии е-КАО мы и взяли этот доработанный макрос.
В большинстве случаев в бухучете наиболее удобно использовать надстройку, с которой распространяется макрос, но иногда возникают проблемы с подключением надстройки.
Поэтому в приложенном для скачивания zip-файле находится вместе два файла:
- sumprop.xla — файл надстройки
- sumprop.xls — файл макроса
Макрос: сумма прописью в Excel 2007, 2010
Можно использовать его как обычный макрос, размещенный в обычной рабочей книге Excel (sumprop.xls). Я тоже так делаю, потому что для подстраховки безопасности не использую чужих, непроверенных макросов. После того, как вы скачаете файл с макросом Сумма Прописью, необходимо подключить данный макрос. Но для этого сначала необходимо разрешить выполнение макросов в MS Excel.
Примечание: При этом необходимо знать, что включение выполнения макросов может создать угрозу безопасности, если вы откроете таблицу Excel, созданную злоумышленником.
Для включения макросов при работе с версией Excel 2002, входящей в состав Microsoft Office XP, или с версией Microsoft Office Excel 2003, нужно выбрать команду меню Сервис — Параметры. Будет открыт диалог настройки, имеющий несколько вкладок. Необходимо открыть вкладку Безопасность, на которой следует нажать кнопку Безопасность макросов. На экране появится диалог настройки безопасности Эксел. С помощью переключателя, расположенного в диалоге, установите низкий уровень безопасности, чтобы выполнялись все макросы. Далее необходимо закрыть оба диалога, для чего следует нажать кнопки OK в них.
В Excel 2000 для вызова аналогичного диалога необходимо выбрать команду меню Сервис — Макрос — Безопасность.
Если же используется версия Эксел 97, нужно выбрать команду меню Сервис — Параметры. В диалоге настройки следует выбрать вкладку Общие и снять флажок Защита от макровирусов. Следует заметить, что если вы не снимите защиту от макровирусов в Excel 97 или установите средний уровень безопасности в других версиях программы, при запуске Excel будет задан вопрос, хотите ли вы выполнять макросы, на который следует ответить утвердительно.