Если в вашей таблице есть столбец с числовыми значениями, и вам нужно преобразовать их в текстовый формат (прописью), вы наверняка задумывались, как это сделать. В Excel нет встроенной формулы для прямой конвертации, но существует несколько обходных путей. Один из них — использование WPS AI, который преобразует числа в слова по простому текстовому запросу. В этой статье мы покажем вам, как преобразовать числа в слова в Excel.
Часть 1. Как преобразовать числа в слова в Excel с помощью VBA

Ваша таблица Excel заполнена числами, а теперь представьте, что эти числа волшебным образом превращаются в слова. В этом и заключается сила макроса SpellNumber в удивительном мире Excel. Давайте кратко рассмотрим, как добавить этот макрос, чтобы подготовить почву для дальнейших преобразований.
Пример: преобразование чисел в слова
У вас есть столбец с числами от 1 до 10 (столбец A). Вы хотите преобразовать эти числа в слова, придав своим данным более элегантный вид. Давайте посмотрим, как добавить макрос SpellNumber для достижения этой цели, чтобы подготовиться к следующему шагу.
Шаг 1. Откройте Excel и перейдите на вкладку «Разработчик» (Developer). Если вы не видите эту вкладку, не переживайте! Ее можно легко включить в параметрах Excel.


Шаг 2. Нажмите «Visual Basic», чтобы открыть редактор VBA.

Шаг 3. В редакторе VBA перейдите в меню «Вставка» (Insert) и выберите «Модуль» (Module). Именно здесь будет происходить всё волшебство.

Шаг 4. Скопируйте код макроса SpellNumber из приведенного ниже источника и вставьте его в модуль.
Function SpellNumber(ByVal MyNumber) 'Update by Extendoffice Dim xStr As String Dim xFNum As Integer Dim xStrPoint Dim xStrNumber Dim xPoint As String Dim xNumber As String Dim xP() As Variant Dim xDP Dim xCnt As Integer Dim xResult, xT As String Dim xLen As Integer On Error Resume Next xP = Array("", "Thousand ", "Million ", "Billion ", "Trillion ", " ", " ", " ", " ") xNumber = Trim(str(MyNumber)) xDP = InStr(xNumber, ".") xPoint = "" xStrNumber = "" If xDP > 0 Then xPoint = " point " xStr = Mid(xNumber, xDP + 1) xStrPoint = Left(xStr, Len(xNumber) - xDP) For xFNum = 1 To Len(xStrPoint) xStr = Mid(xStrPoint, xFNum, 1) xPoint = xPoint & GetDigits(xStr) & " " Next xFNum xNumber = Trim(Left(xNumber, xDP - 1)) End If xCnt = 0 xResult = "" xT = "" xLen = 0 xLen = Int(Len(str(xNumber)) / 3) If (Len(str(xNumber)) Mod 3) = 0 Then xLen = xLen - 1 Do While xNumber <> "" If xLen = xCnt Then xT = GetHundredsDigits(Right(xNumber, 3), False) Else If xCnt = 0 Then xT = GetHundredsDigits(Right(xNumber, 3), True) Else xT = GetHundredsDigits(Right(xNumber, 3), False) End If End If If xT <> "" Then xResult = xT & xP(xCnt) & xResult End If If Len(xNumber) > 3 Then xNumber = Left(xNumber, Len(xNumber) - 3) Else xNumber = "" End If xCnt = xCnt + 1 Loop xResult = xResult & xPoint SpellNumber = xResult End Function Function GetHundredsDigits(xHDgt, xB As Boolean) Dim xRStr As String Dim xStrNum As String Dim xStr As String Dim xI As Integer Dim xBB As Boolean xStrNum = xHDgt xRStr = "" On Error Resume Next xBB = True If Val(xStrNum) = 0 Then Exit Function xStrNum = Right("000" & xStrNum, 3) xStr = Mid(xStrNum, 1, 1) If xStr <> "0" Then xRStr = GetDigits(Mid(xStrNum, 1, 1)) & "Hundred " Else If xB Then xRStr = "and " xBB = False Else xRStr = " " xBB = False End If End If If Mid(xStrNum, 2, 2) <> "00" Then xRStr = xRStr & GetTenDigits(Mid(xStrNum, 2, 2), xBB) End If GetHundredsDigits = xRStr End Function Function GetTenDigits(xTDgt, xB As Boolean) Dim xStr As String Dim xI As Integer Dim xArr_1() As Variant Dim xArr_2() As Variant Dim xT As Boolean xArr_1 = Array("Ten ", "Eleven ", "Twelve ", "Thirteen ", "Fourteen ", "Fifteen ", "Sixteen ", "Seventeen ", "Eighteen ", "Nineteen ") xArr_2 = Array("", "", "Twenty ", "Thirty ", "Forty ", "Fifty ", "Sixty ", "Seventy ", "Eighty ", "Ninety ") xStr = "" xT = True On Error Resume Next If Val(Left(xTDgt, 1)) = 1 Then xI = Val(Right(xTDgt, 1)) If xB Then xStr = "and " xStr = xStr & xArr_1(xI) Else xI = Val(Left(xTDgt, 1)) If Val(Left(xTDgt, 1)) > 1 Then If xB Then xStr = "and " xStr = xStr & xArr_2(Val(Left(xTDgt, 1))) xT = False End If If xStr = "" Then If xB Then xStr = "and " End If End If If Right(xTDgt, 1) <> "0" Then xStr = xStr & GetDigits(Right(xTDgt, 1)) End If End If GetTenDigits = xStr End Function Function GetDigits(xDgt) Dim xStr As String Dim xArr_1() As Variant xArr_1 = Array("Zero ", "One ", "Two ", "Three ", "Four ", "Five ", "Six ", "Seven ", "Eight ", "Nine ") xStr = "" On Error Resume Next xStr = xArr_1(Val(xDgt)) GetDigits = xStr End Function |
|---|
Шаг 5. Закройте редактор VBA и вернитесь к листу Excel.

Мой опыт добавления макроса SpellNumber:
Интегрировать макрос SpellNumber в Excel оказалось удивительно просто. Я перешел на вкладку «Разработчик», открыл редактор VBA и добавил код макроса для написания сумм прописью, который используется в бухгалтерском учете. Меня поразило, как числа могут превращаться в текст. Тем не менее, я понял, что нужно быть осторожным: работа с макросами требует точности, чтобы не повредить таблицу. Помогло наличие резервной копии и базовое понимание структуры VBA. Этот опыт открывает новые возможности Excel, сочетая логику с творческим подходом.
Ваши таблицы Excel превращаются в холст для лингвистической магии. Во второй части мы дадим вам ключ к использованию макроса SpellNumber — мощного инструмента, который превращает ваши числовые данные в элегантную симфонию слов. Изучите практические примеры, которые помогут вам достичь мастерства, и наблюдайте, как ваши данные преображаются на глазах благодаря этому замечательному макросу.
Пример: преобразование числовых данных в слова
Шаг 1. Откройте таблицу Excel с числовыми данными, которые вы хотите преобразовать.
Шаг 2. Выберите соседний столбец. В нашем примере будем использовать столбец B для отображения текста.
Шаг 3. В первой ячейке столбца B введите `=SpellNumber(A1)`.

Шаг 4. Нажмите Enter и наблюдайте, как число из ячейки A1 элегантно преобразуется в слова в ячейке B1.
Шаг 5. Чтобы преобразовать остальные числа, потяните формулу вниз, позволив макросу SpellNumber сделать свое дело.

Мой опыт использования макроса SpellNumber:
Использование макроса SpellNumber открыло новые горизонты: числа превратились в слова, придав моим данным свежий вид. Процесс оказался простым и показал огромный потенциал для улучшения восприятия информации. Однако стоит сделать предупреждение: здесь важна точность. Малейшая ошибка может привести к неожиданным результатам. Для бесперебойной работы необходимо понимание макроса и тщательная проверка вводимых данных.
Часть 2. Как преобразовать числа в слова в Excel без использования VBA
Работа со сложным интерфейсом VBA может показаться пугающей, но не переживайте — существует и более простой способ преобразования чисел в слова. Этот альтернативный подход с использованием пользовательской функции предлагает оптимизированный метод для достижения аналогичного результата. Изучив следующие шаги, мы откроем для себя этот инновационный метод, который позволит вам легко преобразовать данные в текстовый формат, избежав при этом сложностей VBA.
Преимущества использования макроса SpellNumber:
1. Простота использования: Пользовательская функция невероятно проста. Знание VBA не требуется, что делает ее доступной для широкой аудитории.
2. Универсальная доступность: В отличие от макросов, которые необходимо интегрировать в каждую книгу, функция переносится вместе с листом, обеспечивая беспроблемный обмен файлами.
3. Отсутствие предупреждений о макросах: Попрощайтесь с надоедливыми предупреждениями о макросах при отправке рабочих книг. Функция работает в фоновом режиме, элегантно преобразуя числа в слова.
Недостатки использования макроса SpellNumber в Excel:
1. Требование знаний VBA: Для настройки макросов требуются навыки работы с VBA, что может стать ограничением для тех, кто не знаком с программированием.
2. Привязка к конкретной книге: Макросы необходимо копировать или встраивать в каждую рабочую книгу отдельно, что усложняет работу и требует дополнительных усилий по обслуживанию.
3. Предупреждения о макросах: Совместное использование книги с макросами может вызывать предупреждения, что иногда вызывает опасения по поводу безопасности.
Теперь давайте пойдем другим путем и оценим изящество этого метода (использование комбинаций доступных формул в Excel) на практическом примере.
Как преобразовать числа в слова в Excel без VBA
Пример: преобразование чисел в слова с помощью формулы
Шаг 1. Откройте таблицу Excel с числовыми данными, которые вы хотите преобразовать.

Шаг 2. Выберите столбец, соседний с числами. Будем использовать столбец B для отображения текста.
Шаг 3. В первой ячейке столбца B введите формулу:
=IF(OR(LEN(FLOOR(A1,1))=13,FLOOR(A1,1)<=0),"out of="" range="">1,CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),3,1)+1,""," one"," two"," three"," four"," five"," six"," seven"," eight"," nine"),IF(VALUE(MID(TEXT(INT(A1),REPT(0,12)),2,1))=0,CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),3,1)+1,"","one","two","three","four","five","six","seven","eight","nine"),"")),IF(A1>=10^9," billion ",""),CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),4,1)+1,"","one hundred ","two hundred ","three hundred ","four hundred ","five hundred ","six hundred ","seven hundred ","eight hundred ","nine hundred "),CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),5,1)+1,"",CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),6,1)+1,"ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"),"twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"),IF(VALUE(MID(TEXT(INT(A1),REPT(0,12)),5,1))>1,CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),6,1)+1,""," one"," two"," three"," four"," five"," six"," seven"," eight"," nine"),IF(VALUE(MID(TEXT(INT(A1),REPT(0,12)),5,1))=0,CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),6,1)+1,"","one","two","three","four","five","six","seven","eight","nine"),"")),IF(VALUE(MID(TEXT(INT(A1),REPT(0,12)),4,3))>0," million ",""),CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),7,1)+1,"","one hundred ","two hundred ","three hundred ","four hundred ","five hundred ","six hundred ","seven hundred ","eight hundred ","nine hundred "),CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),8,1)+1,"",CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),9,1)+1,"ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"),"twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"),IF(VALUE(MID(TEXT(INT(A1),REPT(0,12)),8,1))>1,CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),9,1)+1,""," one"," two"," three"," four"," five"," six"," seven"," eight"," nine"),IF(VALUE(MID(TEXT(INT(A1),REPT(0,12)),8,1))=0,CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),9,1)+1,"","one","two","three","four","five","six","seven","eight","nine"),"")),IF(VALUE(MID(TEXT(INT(A1),REPT(0,12)),7,3))," thousand ",""),CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),10,1)+1,"","one hundred ","two hundred ","three hundred ","four hundred ","five hundred ","six hundred ","seven hundred ","eight hundred ","nine hundred "),CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),11,1)+1,"",CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),12,1)+1,"ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"),"twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"),IF(VALUE(MID(TEXT(INT(A1),REPT(0,12)),11,1))>1,CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),12,1)+1,""," one"," two"," three"," four"," five"," six"," seven"," eight"," nine"),IF(VALUE(MID(TEXT(INT(A1),REPT(0,12)),11,1))=0,CHOOSE(MID(TEXT(INT(A1),REPT(0,12)),12,1)+1,"","one","two","three","four","five","six","seven","eight","nine"),"")))," "," ")&IF(FLOOR(A1,1)>1," "," "))&IF(ISERROR(FIND(".",A1,1)),""," point "&PROPER(IF(LEN(LEFT(TRIM(MID(SUBSTITUTE('Number to Word Without VBA'!A1,".",REPT(" ",255)),255,200)),2))=1,CHOOSE(1*LEFT(TRIM(MID(SUBSTITUTE('Number to Word Without VBA'!A1,".",REPT(" ",255)),255,200)),2),"One","Two","Three","Four","Five","Six","Seven","Eight","Nine")&" ","")&CONCATENATE(CHOOSE(MID(TEXT(INT(LEFT(TRIM(MID(SUBSTITUTE('Number to Word Without VBA'!A1,".",REPT(" ",255)),255,200)),2)),REPT(0,12)),11,1)+1,"",CHOOSE(MID(TEXT(INT(LEFT(TRIM(MID(SUBSTITUTE('Number to Word Without VBA'!A1,".",REPT(" ",255)),255,200)),2)),REPT(0,12)),12,1)+1,"One","One One","One Two","One Three","One Four","One Five","One Six","One Seven","One Eight","One Nine")&" ","Two","Three","Four","Five","Six","Seven","Eight","Nine"),IF(VALUE(MID(TEXT(INT(LEFT(TRIM(MID(SUBSTITUTE('Number to Word Without VBA'!A1,".",REPT(" ",255)),255,200)),2)),REPT(0,12)),11,1))>1,CHOOSE(MID(TEXT(INT(LEFT(TRIM(MID(SUBSTITUTE('Number to Word Without VBA'!A1,".",REPT(" ",255)),255,200)),2)),REPT(0,12)),12,1)+1,""," One"," Two"," Three"," Four"," Five"," Six"," Seven"," Eight"," Nine")&" ",IF(LEFT(TRIM(MID(SUBSTITUTE('Number to Word Without VBA'!A1,".",REPT(" ",255)),255,200)),2)="01","one ",IF(LEFT(TRIM(MID(SUBSTITUTE('Number to Word Without VBA'!A1,".",REPT(" ",255)),255,200)),1)="0",CHOOSE(MID(TEXT(INT(LEFT(TRIM(MID(SUBSTITUTE('Number to Word Without VBA'!A1,".",REPT(" ",255)),255,200)),2)),REPT(0,12)),12,1)+1,"","One","Two","Three","Four","Five","Six","Seven","Eight","Nine")&" ",""))))))) |
|---|
Шаг 4. Нажмите Enter и наблюдайте, как число в ячейке A2 изящно превращается в слова в ячейке B2.

Шаг 5. Чтобы преобразовать остальные числа, потяните формулу вниз, запуская волшебную метаморфозу.

Мой опыт использования пользовательской функции:
Изучая пользовательские функции, я оценил их простоту — никакого сложного программирования на VBA или запутанных настроек. Лишь простая формула для преобразования чисел в слова, которая добавляет уникальности работе в Excel. И все же предупреждаю: главное — хорошо понимать работу функции. Протестируйте ее в различных сценариях, чтобы убедиться в точности. Этот практический опыт подчеркивает ценность функции и в то же время говорит о важности ее осторожного использования для достижения наилучших результатов.
Часть 3. Почему стоит использовать WPS Office?

Важно отметить, что рассмотренные нами методы применимы не только к Microsoft Excel, но и к таблицам WPS Office (Spreadsheets). Однако мы предлагаем вам изучить явные преимущества, которые дает WPS Office. Вот почему мы рекомендуем использовать WPS Office для выполнения ваших задач в электронных таблицах:
1. Цена: WPS Office предлагает доступную альтернативу без ущерба для функциональности, что делает его экономически выгодным выбором как для личного, так и для профессионального использования.
2. Совместимость: Легко обменивайтесь документами между WPS Office и Microsoft Office, обеспечивая бесперебойную совместную работу и передачу файлов.
3. Функции: WPS Office может похвастаться полным набором функций, не уступающим отраслевым стандартам и позволяющим с легкостью выполнять самые разные задачи. В нем также реализованы ИИ-функции, такие как AI Writer и переводчик документов на базе ИИ.
4. Удобный интерфейс: Навигация в WPS Office очень проста даже для новичков. Интуитивно понятный интерфейс обеспечивает быстрое обучение и эффективный рабочий процесс.
5. Откройте для себя скрытые возможности: Загляните в блог WPS, чтобы найти массу полезной информации, которая поможет улучшить ваши навыки. От продвинутых методов работы до инновационных решений — каждое руководство станет для вас шагом к мастерству.
6. Быстрое преобразование форматов: Для повышения эффективности работы в WPS Office можно также быстро преобразовать Excel в PDF.
7. Повышение продуктивности с помощью ИИ: WPS AI значительно ускоряет выполнение повседневных задач — от преобразования чисел в слова в Excel по простому запросу до автоматического создания формул, реферирования документов и перевода текста в реальном времени.
Часть 4. Как преобразовать числа в слова в Excel с помощью WPS AI
В дополнение к только что рассмотренным методам без использования VBA, WPS AI предлагает еще более интуитивно понятный способ преобразования чисел в слова — без ручного создания формул. Этот подход на базе ИИ еще больше упрощает процесс, делая его доступным для пользователей с любым уровнем навыков.
Шаг 1. В пустой ячейке начните вводить =WPSAI и дважды щелкните функцию WPSAI в выпадающем меню.

Шаг 2. Внутри скобок функции укажите ссылку на ячейку с целевым числом, а затем добавьте текстовый запрос (промпт).

Шаг 3. Нажмите Enter, и ИИ мгновенно сгенерирует словесный эквивалент числа в этой ячейке.

Шаг 4. Потяните маркер заполнения вниз от первой преобразованной ячейки, чтобы применить то же преобразование с помощью ИИ ко всем остальным числам в столбце.


Числа в выделенных ячейках будут преобразованы в текст.
В отличие от статических формул без VBA, привязанных к одному конкретному правилу преобразования, ИИ способен понимать запросы на естественном языке. Поэтому, если мне когда-нибудь понадобится переключиться на другой стиль, я просто изменю запрос вместо того, чтобы переписывать формулу. Это также избавляет от необходимости запоминать сложный синтаксис или устранять неполадки во вложенных функциях; ИИ берет на себя всю тяжелую работу, позволяя мне сосредоточиться на данных, а не на технической стороне. После завершения расчетов вы также можете воспользоваться функцией конвертации WPS Office, включая преобразование Excel в PDF.
Часто задаваемые вопросы о преобразовании чисел в слова в Excel
Могу ли я сделать обратное преобразование из слов в числа?
Безусловно! Обратное преобразование слов в числа действительно возможно в WPS Office с помощью кода VBA. Хотя в этой статье основное внимание уделялось преобразованию чисел в слова, важно отметить, что WPS Office предоставляет универсальные инструменты для работы в обоих направлениях.
Могу ли я преобразовать числа в слова в один клик?
Конечно, превратить числа в слова в один клик проще простого благодаря замечательным возможностям WPS Office (с использованием VBA или комбинаций доступных формул). Этот оптимизированный процесс упрощает работу, экономя ваше драгоценное время и усилия.
Что такое VBA и как быстро его освоить?
VBA — это язык программирования от Microsoft, используемый для автоматизации задач и создания пользовательских решений в таких приложениях Office, как Excel, Word и PowerPoint.
Как быстро выучить VBA:
Основы: Изучите такие концепции программирования, как переменные и циклы.
Редактор VBA: Открывайте его в приложениях Office для написания кода.
Примеры: Изучайте простые примеры кода.
Запись макросов: Обучайтесь, записывая свои действия.
Онлайн-ресурсы: Используйте учебные пособия и курсы.
Практика: Регулярно пишите код для небольших проектов.
Документация: Изучайте документацию Microsoft по VBA.
Сообщества: Общайтесь на онлайн-форумах.
Создание: Создавайте собственные макросы для реальных задач.
Отладка: Научитесь исправлять ошибки в коде.
Любознательность: Продолжайте исследовать и экспериментировать.
Освоение VBA повышает продуктивность и позволяет создавать индивидуальные решения.
Что делать, если файл повредился в процессе конвертации?
Как правило, проблем с повреждением файлов не возникает. Однако если файл все же повредился в процессе преобразования, не волнуйтесь — вы можете воспользоваться инструментом восстановления файлов WPS, чтобы восстановить файл Excel.
Итоги
В этом руководстве мы рассмотрели различные способы преобразования чисел в слова в Excel, уделив основное внимание как макросам VBA, так и пользовательским функциям. Мы привели четкие пошаговые инструкции и примеры для каждого метода. Подчеркивая преимущества WPS Office, мы отметили его совместимость с Excel, удобные функции и доступность, а также мощный инструмент WPS AI, который упрощает преобразование чисел в слова с помощью одного короткого запроса. WPS также предоставляет просмотрщик XLSX, который поможет вам мгновенно открывать и просматривать файлы Excel. Независимо от того, выберете ли вы VBA или пользовательские функции, это руководство поможет вам легко справиться с преобразованием чисел в слова, а также оценить все преимущества использования WPS Office для выполнения офисных задач.





