Число прописью в excel
Содержание:
- Функция сумма прописью на русском языке
- Использование надстройки
- Использование надстройки
- Создание сумм прописью с помощью формул
- Использование программы печати суммы прописью в Excel (Ексел)
- Включаем надстройку NUM2TEXT в меню Excel
- Надстройка: цена прописью в Excel
- Преобразование чисел в слова
- Прописать формулу для суммы прописью
- С помощью VBA
- Как использовать мастер функций, для работы с функциями вывода суммы прописью и числа прописью
Функция сумма прописью на русском языке
После установки надстройки VBA-Excel добавится функционал для вставки суммы прописью. Он содержит удобную форму для ввода (см. рисунок справа), а также функцию СУММАПРОПИСЬЮ, которой можно пользоваться так же как и любой встроенной в Excel.
Вы сможете указать число прописью в любом падеже, а также выбрать формат вывода, который необходим в конкретном случае.
Вы можете указать сумму прописью в договоре в рублях (как с копейками так и без), в долларах США или евро (с центами или без). Помимо суммы договора можно прописывать прописью и срок в календарных или рабочих днях. Можно указывать количество товара прописью в штуках.
Функционал достаточно гибкий и позволяет настраивать отображение скобок, формат дробной части, указывать сумму с заглавной или прописной буквы и многое другое.
Вставка суммы прописью через пользовательскую форму
Наиболее простой способ вставить сумму прописью – это заполнить специальную форму.
- Выберите ячейку, в которую необходимо вставить число прописью.
- На вкладке VBA-Excel нажмите команду Сумма прописью и выберите язык Русский.
- Появится диалоговое окно для выбора параметров функции. Заполните ее так как необходимо Вам. Настройки автоматически сохраняются, чтобы не пришлось повторять действия в следующий раз.
- Нажмите Вставить текстом, тогда сумма прописью будет вставлена в ячейку как текст. Нажмите Вставить формулой в случае если в ячейку должна быть вставлена формула, в этом случае сумма прописью будет автоматически изменяться при редактировании числа.
Второй способ вставить сумму прописью – это ввести формулу в ячейку: =СУММАПРОПИСЬЮ(A1), где A1 – ссылка на ячейку с формулой.
Далее рассмотрим подробнее синтаксис функции.
Подробный синтаксис функции
Для использования функции не обязательно постоянно вызывать форму с параметрами. Функцию можно использовать также как и прочие функции Excel. Функция имеет следующие переменные:
=СУММАПРОПИСЬЮ(Число; ; ; ; ; ; )
Квадратные скобки означают что переменная не обязательная, в этом случае используется значение по умолчанию.
- Число – ссылка на ячейку или число (не обязательно в числовом формате), которое необходимо написать прописью.
- – число от 1 до 6, определяющее падеж
- Именительный (по умолчанию если параметр не указан)
- Родительный
- Дательный
- Винительный
- Творительный
- Предложный
– число от 0 до 8 для добавления после суммы прописью в нужном падеже тип данных
- Ничего (по умолчанию если параметр не указан)
- Рубли
- Доллары США
- Евро
- Календарные дни
- Рабочие дни
- Дни
- Штуки
- Целое + дробная часть
– значение 0 или 1, которое указывает на необходимость записи дробной части числа прописью
- Не выводить прописью дробную часть числа (по умолчанию)
- Указать прописью также и дробную часть числа
– значение 0 или 1, которое указывает на необходимость дублирования числа перед суммой прописью
- Скрыть число перед суммой прописью
- Продублировать числовое значение суммы прописью (по умолчанию)
– значение 0 или 1, которое указывает на необходимость записывать сумму прописью в скобках
- Убрать скобки из суммы прописью
- Поместить сумму прописью в скобки (по умолчанию)
– значение 0 или 1, которое указывает на необходимость делать первую букву суммы прописью заглавной
- Все буквы суммы прописью строчные
- Сделать первую букву заглавной (по умолчанию)
Разберем синтаксис функции на примерах:
Склонение числительных по падежам.
Добавление типа данных после указания суммы прописью
Обратите внимание, что если вторая переменная (падеж) не задана, то указывается по умолчанию в именительном падеже
Как прописать дробную часть числа с помощью функции.
Различные форматы вывода суммы прописью.
Использование надстройки
В Эксель нет встроенного инструмента, который бы помогал автоматически переводить цифры в слова. Поэтому для решения поставленной задачи используют специальные надстройки.
Одной из самых удобных является надстройка 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)
Имя диапазона: мил Диапазон: =
Имя диапазона: тыс Диапазон: =
Чтобы создать справочник таких диапазонов, переходим на вкладку «Формулы» — «Диспетчер имен«:
В открывшемся окне нажимаем кнопку «Создать» и в форме вводим данные первого диапазона из таблицы:
Далее таким же образом вводим все остальные диапазоны из таблицы:
Использование надстройки
В Эксель нет встроенного инструмента, который бы помогал автоматически переводить цифры в слова. Поэтому для решения поставленной задачи используют специальные надстройки.
Одной из самых удобных является надстройка 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)
Имя диапазона: мил Диапазон: =
Имя диапазона: тыс Диапазон: =
Чтобы создать справочник таких диапазонов, переходим на вкладку «Формулы» — «Диспетчер имен«:
В открывшемся окне нажимаем кнопку «Создать» и в форме вводим данные первого диапазона из таблицы:
Далее таким же образом вводим все остальные диапазоны из таблицы:
Создание сумм прописью с помощью формул
Это вполне осуществимый вариант, но очень громоздкий. Формула, которая может самостоятельно преобразовывать числа в буковки и правильно орфографически написать сумму прописью получится очень большой. В случае, когда вы захотите упростить формулу, вам нужно будет отдельный блок формул, который буде и заниматься всеми преобразованиями. Единственное преимущество от использования формулы, это когда вы разберетесь с ней, то самостоятельно сможете ее изменять: разрядность, валюту, склонение и т.п.
Ради общего интереса я предоставлю вам пример файла с работающей формулой, которую я нашёл на excelworld.ru, поскольку самостоятельно формульным решением задачи я не занимался, но считаю нужным предоставить весь наработанный или собранный материал. Скачать пример можно по этой ссылке.
Использование программы печати суммы прописью в Excel (Ексел)
Работа с ней ведется через использование функций Excel. Введите в первую ячейку третьей строки формулу =СуммаПрописью(836) и вы увидите результат вычислений:
Введите после этого в первую ячейку второй строки формулу = СуммаПрописью (A1). Так как пока в ячейку A1 ничего не введено, то результатом будет:
После того, как в первую ячейку будет введено число, например, 3743917034,51, результат изменится на:
При вводе другого числа результат соответственно изменится. Кроме печати суммы прописью доступна стала и еще одна дополнительная функция. Введите в первую ячейку число 582,43, а в любую свободную ячейку формулу =ЧислоПрописью(A1) . Результатом будет пятьсот восемьдесят два , то есть первая буква уже не прописная, копейки отброшены и нет названия рублей. Также имеется возможность вывода суммы для названий женского рода – пятьсот восемьдесят две . Для этого следует использовать формулу =ЧислоПрописью(A1;ЛОЖЬ) . Если второй параметр опущен, выводится сумма для названий мужского рода.
Включаем надстройку NUM2TEXT в меню Excel
Перед созданием ячеек с суммой прописью нужно скачать надстройку для Microsoft Excel. Надстроек нет на официальном сайте разработчиков, но ее можно загрузить с других страниц
Важно проверять файлы, которые загружаются на компьютер с помощью антивирусной программы, иначе есть риск заразить систему вирусом
Также обратите внимание на разрешение файла. Правильное разрешение – XLA
Если надстройка уже скачана, поместите ее в папку, где ее будет несложно найти. Это пригодится при подключении. Далее разберем включение надстройки по шагам:
- Необходимо открыть вкладку «Файл» в документе Эксель и выбрать раздел «Параметры». Обычно он находится в нижней части списка разделов.
1
- Откроется окно параметров, в левой части которого находится меню. Выбираем раздел «Надстройки». Если после этого взглянуть в правую часть экрана, можно увидеть, что некоторые из них предустановлены, но они не подходят для упрощенной записи суммы прописью.
Внизу находится подраздел «Управление» с кнопкой «Перейти». Кликаем по этой кнопке.
2
- На экране появится окно с доступными надстройками. Если необходимо, можно включить некоторые из них, но цель в данном случае – кнопка «Обзор».
3
- Находим файл с надстройкой через окно обзора. Кликаем по нему, чтобы выбрать, и нажимаем «ОК».
4
- В списке надстроек появится пункт «Num2Text». Рядом с ним должна сразу стоять галочка. Если ее нет в окошке, нужно выбрать эту надстройку вручную и нажать «ОК».
5
Подключение надстройки «Сумма прописью» завершено, теперь можно ею воспользоваться.
Надстройка: цена прописью в 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, но вы можете добавить эту возможность путем вставки следующий код функции SpellNumber в модуле VBA (Visual Basic for Applications). Эта функция позволяет преобразовывать доллара и кратное сумм для слов с помощью формулы, 22,50 читается как двадцати двух центы и т. Это может быть очень полезным при использовании Excel как шаблон для печати проверки.
Если вы хотите преобразования числовых значений в текстовом формате без отображения их как слова, используйте функции текст .
Примечание: Microsoft примеры программирования только для иллюстрации и без гарантий выраженное или подразумевается. Включает в себя, но не ограничивается гарантий окупаемость или Фитнес для определенной цели. В этой статье предполагается, что вы знакомы с языком VBA программирования и с помощью средств, которые используются для создания и отладки процедур. Сотрудники службы поддержки Майкрософт могут пояснить конкретной процедуры. Однако они не изменять эти примеры для обеспечения функциональных возможностей или создания процедур в соответствии с конкретными требованиями.
Прописать формулу для суммы прописью
формула будет продолжать) в текст: например: четыреста сорок. 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>
С помощью VBA
Вот еще один способ на любителя. Конечно создать сумму прописью в Excel с помощью макроса не самый распространённый способ, но им достаточно часто пользовались и пользуются до сих пор. Большой сложности он не представляет, вам нужно:
- Комбинацией горячих клавиш ALT+F11 вызвать редактор Visual Basic;
- С помощью меню «Insert» — «Module», создать пустой новый модуль;
- Скопировать предоставленный код макроса в тело модуля.
Получается готовая пользовательская функция VBA, которая умеет превращать любую сумму от 0 до 9 999 999 в ее текстовое воплощение, создается сумма прописью.
Код нужного макроса выглядит так:
Function СУММАПРОПИСЬЮ(n As Double) As String
Dim Nums1, Nums2, Nums3, Nums4 As Variant
Nums1 = Array(«», «один «, «два «, «три «, «четыре «, «пять «, «шесть «, «семь «, «восемь «, «девять «)
Nums2 = Array(«», «десять «, «двадцать «, «тридцать «, «сорок «, «пятьдесят «, «шестьдесят «, «семьдесят «, _
«восемьдесят «, «девяносто «)
Nums3 = Array(«», «сто «, «двести «, «триста «, «четыреста «, «пятьсот «, «шестьсот «, «семьсот «, _
«восемьсот «, «девятьсот «)
Nums4 = Array(«», «одна «, «две «, «три «, «четыре «, «пять «, «шесть «, «семь «, «восемь «, «девять «)
Nums5 = Array(«десять «, «одиннадцать «, «двенадцать «, «тринадцать «, «четырнадцать «,
«пятнадцать «, «шестнадцать «, «семнадцать «, «восемнадцать «, «девятнадцать «)
If n <= 0 Then
СУММАПРОПИСЬЮ = «ноль»
Exit Function
End If
‘разделяем число на разряды, используя вспомогательную функцию Class
ed = Class(n, 1)
dec = Class(n, 2)
sot = Class(n, 3)
tys = Class(n, 4)
dectys = Class(n, 5)
sottys = Class(n, 6)
mil = Class(n, 7)
decmil = Class(n, 8)
‘проверяем миллионы
Select Case decmil
Case 1
mil_txt = Nums5(mil) & «миллионов «
GoTo www
Case 2 To 9
decmil_txt = Nums2(decmil)
End Select
Select Case mil
Case 1
mil_txt = Nums1(mil) & «миллион «
Case 2, 3, 4
mil_txt = Nums1(mil) & «миллиона «
Case 5 To 20
mil_txt = Nums1(mil) & «миллионов «
End Select
sottys_txt = Nums3(sottys)
‘проверяем тысячи
Select Case dectys
Case 1
tys_txt = Nums5(tys) & «тысяч «
GoTo eee
Case 2 To 9
dectys_txt = Nums2(dectys)
End Select
Select Case tys
Case 0
If dectys > 0 Then tys_txt = Nums4(tys) & «тысяч «
Case 1
tys_txt = Nums4(tys) & «тысяча «
Case 2, 3, 4
tys_txt = Nums4(tys) & «тысячи «
Case 5 To 9
tys_txt = Nums4(tys) & «тысяч «
End Select
If dectys = 0 And tys = 0 And sottys 0 Then sottys_txt = sottys_txt & » тысяч «
sot_txt = Nums3(sot)
‘проверяем десятки
Select Case dec
Case 1
ed_txt = Nums5(ed)
GoTo rrr
Case 2 To 9
dec_txt = Nums2(dec)
End Select
ed_txt = Nums1(ed)
‘формируем итоговую строку
СУММАПРОПИСЬЮ = decmil_txt & mil_txt & sottys_txt & dectys_txt & tys_txt & sot_txt & dec_txt & ed_txt
End Function
‘вспомогательная функция для выделения из числа разрядов
Private Function Class(M, I)
Class = Int(Int(M — (10 ^ I) * Int(M / (10 ^ I))) / 10 ^ (I — 1))
End Function
Сохраняете внесенные изменения и теперь можно пользоваться новой функцией, как и прочими, она отображается в «Мастере функций» в категории «Определенные пользователем» или же просто вручную ввести ее в ячейке указав какую сумму необходимо сделать прописной.
Но как видите, макрос пишет прописью суммы, только целые числа, а вот для получения еще и копеек, эту конструкцию нужно доработать использованием следующей функции:
=СУММАПРОПИСЬЮ(A3)&» руб. «&ТЕКСТ((A3-ЦЕЛОЕ(A3))*100;»00″)&» коп.»
Приставку «Module2» в моей формуле можете опустить, так как таким образом, программа разделяет 2 похожие формулы, одна от установленных надстроек, а вторая от макроса.
А на этом у меня всё! Я очень надеюсь, что всё о том, как ваши цифры сделать прописными вам понятно. Буду очень благодарен за оставленные комментарии, так как это показатель читаемости и вдохновляет на написание новых статей! Делитесь с друзьями прочитанным и ставьте лайк!
Не забудьте поблагодарить автора!
Что такое ограбление банка по сравнению с основанием банка?Бертольт Брехт
>Число прописью в Excel 2003 и Excel 2007
Как использовать мастер функций, для работы с функциями вывода суммы прописью и числа прописью
Для этого вначале щелкните мышью на ячейке, в которую вы хотите вставить функцию, после чего откройте список доступных функций. В нем следует выбрать вариант Другие функции. Кроме того, для вызова функций можно нажать кнопку fx, расположенную в левой части строки формул.
В ранних версиях программы аналогичная кнопка расположена на панели инструментов. Каким бы способом не вызван был мастер функций, в появившемся диалоге необходимо выбрать категорию Определенные пользователем . В списке функций данной категории должны находиться СуммаПрописью и ЧислоПрописью . Выбрав нужную функцию, нажмите кнопку OK , чтобы перейти к следующему диалогу мастера функций. В нем задаются аргументы, то есть вы должны ввести число, которое будет преобразовано в слова.
Можно ввести непосредственно значение или сослаться на ячейку, в которой это значение расположено. Нажав кнопку OK , вы закроете диалог и вставите результат в текущую ячейку.
ДОПОЛНИТЕЛЬНЫЕ ССЫЛКИ по теме
- флешка USB Flash: УТИЛИТЫ ПРОГРАММЫ для восстановления, форматирования флешекФирменные универсальные утилиты софт для восстановления объема, тестирования флешек USB Flash. Драйвера для USB Flash. Производители: Sony, Seitec, IOSELL, Transcend , A-Data, SanDisk, EasyDisk, Patriot, Panasonic, Traxdata.
Денежная сумма прописью на рабочем листе Excel. Преобразование с помощью блока ячеек с формулами. Применение пользовательской функции «СуммаПрописью».
В этой статье рассмотрены способы преобразования денежного значения в самый употребительный текстовый формат: 0,00 = Ноль рублей 00 копеек.