Денежная сумма прописью на рабочем листе Excel. Преобразование с помощью блока ячеек с формулами. Применение пользовательской функции «СуммаПрописью».
В Excel нет встроенной функции, преобразующей числовое денежное значение в сумму прописью. Для этих целей используются блоки ячеек с формулами и пользовательские функции. Есть умельцы, которые всё преобразование умещают в одной сложной формуле, но это уже экзотика.
В этой статье рассмотрены способы преобразования денежного значения в самый употребительный текстовый формат: 0,00 = Ноль рублей 00 копеек.
Блок ячеек с формулами
Скачайте файл Excel с блоком ячеек с формулами, преобразующими число в сумму прописью, и примером размещения ссылок.
Работать с блоком ячеек чрезвычайно просто:
- Скопируйте диапазон с формулами и вставьте в нужный файл.
- Замените в блоке входную ссылку рядом со словом «Вход».
- В ячейку, где должна отображаться сумма прописью, добавьте ссылку на выходную ячейку блока (рядом со словом «Выход»).
Пример размещения ссылок смотрите в скачанном файле. При желании, диапазон ячеек с формулами можно скрыть.
Преимущества блока ячеек с формулами:
- это самый простой для реализации способ автоматизации перевода числовых выражений в сумму прописью;
- файлы с блоками ячеек правильно работают у других пользователей программы Excel без дополнительного разрешения выполнения макросов.
Недостатки блока ячеек с формулами:
- не совсем удобно для пользователя каждый раз переносить блок ячеек с формулами из файла в файл;
- если диапазон ячеек с формулами скрыт или размещен вне видимого экрана, можно случайно удалить часть формул вместе с удаляемыми строками или столбцами.
Этих недостатков лишен более изящный способ преобразования числового денежного значения в текст с помощью пользовательской функции «СуммаПрописью».
Функция «СуммаПрописью»
Эта пользовательская функция написана на VBA Excel. Вставить ее в ячейку можно с помощью мастера функций или вручную, как и любую другую встроенную функцию рабочего листа.
Чтобы функцией «СуммаПрописью» можно было воспользоваться, ее программный код должен быть добавлен в рабочую книгу Excel. При передаче книги со встроенным кодом на другой компьютер, функция сохранит работоспособность.
Чтобы функция была доступна из всех рабочих книг на отдельном компьютере, ее код следует добавить в персональную (личную) книгу макросов (PERSONAL.XLSB).
Если у вашей программы Excel нет личной книги макросов, ее можно создать самостоятельно. Ниже рассмотрено добавление кода функции именно в персональную книгу макросов, в рабочие книги он добавляется точно также.
- Скачайте архив и извлеките из него файл «Module.bas» с кодом функции.
- Откройте любую книгу Excel, можно новую.
- Сочетанием левой клавиши Alt+F11 откройте редактор Visual Basic for Applications.
- Дважды кликните на строке «VBA Project (PERSONAL.XLSB)» или один раз на крестике слева для открытия вложенного списка. Если эта позиция уже развернута переходите к пункту 5.
- Дважды кликните на строке «Microsoft Excel Objects» или один раз на крестике слева для открытия списка объектов. Если эта позиция уже развернута переходите к пункту 6.
- Кликнув правой кнопкой на строке «ЭтаКнига», откройте контекстное меню и выберите в нем пункт «Import File…».
- В открывшемся диалоге выбора файлов найдите извлеченный ранее из архива «Module.bas» и выберите его двойным кликом. Модуль с функцией будет автоматически загружен.
Теперь можно в ячейки на листах любых рабочих книг вставлять формулу: «=PERSONAL.XLSB!СуммаПрописью(АдресЯчейки)» или, что намного удобнее, выбирать функцию с помощью мастера. Откройте мастер функций, выберите категорию «Определенные пользователем» и в списке доступных функций появится строка «PERSONAL.XLSB!СуммаПрописью», которую можно выбрать, а на втором шаге вставить адрес ячейки с числовым значением.
Формула будет доступна во всех книгах Excel, но только на компьютере, на котором находится персональная книга макросов PERSONAL.XLSB с загруженным модулем.
Если книгу планируется передавать на другие машины, тогда в шаге 6 надо правой кнопкой кликнуть на строке «ЭтаКнига», относящейся не к «VBA Project (PERSONAL.XLSB)», а относящейся к «VBA Project (ВашаКнига)» с именем вашей книги. Тогда модуль с функцией загрузится непосредственно в вашу рабочую книгу Excel и будет доступен для этой книги на любом компьютере. В этом случае формула в ячейке будет иметь вид: «=СуммаПрописью(АдресЯчейки)».
С кодом функции «СуммаПрописью» вы можете ознакомиться в этой статье.
Отлично, все работает.
Спасибо.
Отлично для рубля подходит. Но нет Евро и долларов.
Большое спасибо за помощь!
Очень пригодилось
Здравствуйте, подскажите, как настроить сумму прописью в тенге?
Добрый день, Кайрат!
Настроить функцию с рублями у вас получилось? В безналичном обращении тиыны еще используются, или нужно без них?
Обсуждение закрыто.