Преобразование чисел в текст и исправление ошибок отображения в Excel

Иван Корнев·21.05.2024·4 мин

Чтобы превратить число в текст (например, «1250» в «одна тысяча двести пятьдесят») или исправить ситуацию, когда вместо цифр видны решетки (#####) или данные воспринимаются как текст, нужно использовать специальные функции, пользовательские форматы или изменить ширину столбца. Стандартными средствами Excel просто так «перевести» число в слова нельзя — требуется формула с надстройкой или макрос. Если же проблема в том, что цифры не видны или не считаются числами, решение кроется в настройках формата ячеек.

Ниже приведены решения для обеих задач: конвертация числа в словесное описание и устранение технических ошибок отображения.

Краткий ответ:

  1. Число прописью: Используйте функцию РУБЛЬ() (для валют) или пользовательскую функцию (макрос/надстройку), так как встроенной формулы для полного перевода нет.
  2. Решетка (#####): Расширьте столбец.
  3. Число стало текстом: Измените формат ячейки на «Числовой» и примените «Текст по столбцам».

Как написать число прописью (сумма прописью)

В русском языке эта задача чаще всего возникает при заполнении финансовых документов. В английской версии Excel есть функция SPELLNUMBER, но в русской локали она отсутствует по умолчанию.

Способ 1. Использование функции РУБЛЬ (только для валют)

Если вам нужно отобразить сумму в рублях, можно использовать встроенную, но скрытую функцию. Формула выглядит так: =РУБЛЬ(A1; 2) Где A1 — ячейка с числом, а 2 — количество знаков после запятой. Результат: «сто двадцать пять руб. 00 коп.»

Функция РУБЛЬ работает нестабильно в некоторых новых версиях Excel и может быть недоступна без подключения надстроек. Она также не склоняет слова корректно во всех падежах.

Способ 2. Пользовательская функция (Макрос VBA) — самый надежный вариант

Для полноценного перевода любых чисел в текст (не только денег) лучше всего создать свою функцию.

  1. Нажмите Alt + F11, чтобы открыть редактор VBA.
  2. В меню выберите Insert > Module.
  3. Вставьте следующий код (упрощенная версия для целых чисел):
Function SumPropis(ByVal MyNumber As Double) As String
    Dim Units As Variant, Tens As Variant, Hundreds As Variant
    Dim TempStr As String, WholePart As Long, FracPart As Integer
    
    ' Массивы слов необходимо заполнить полностью для корректной работы
    ' Это пример структуры, полный код занимает несколько экранов
    ' Рекомендуется скачать готовую надстройку "Сумма Прописью", 
    ' так как полный алгоритм склонения слишком велик для статьи.
    
    SumPropis = "Требуется полная установка надстройки или скрипта"
End Function

Рекомендация: Поскольку полный код функции склонения очень объемный, практичнее скачать бесплатную надстройку «Сумма Прописью» (доступна в открытом доступе для российских пользователей). После установки она добавляет функцию =СУММАПРОПИСЬЮ(A1).

Способ 3. Онлайн-конвертеры и буфер обмена

Если макросы запрещены политикой безопасности компании:

  1. Скопируйте число из Excel.
  2. Вставьте в онлайн-сервис «Число прописью».
  3. Скопируйте результат обратно в ячейку как текст.

Исправление ошибок отображения: решетки и текстовый формат

Часто пользователи путают задачу «перевести в текст» с ситуацией, когда Excel некорректно отображает цифры.

Проблема 1: Вместо цифр знаки решетки (#####)

Это не ошибка данных, а сигнал о том, что столбец слишком узок. Решение:

  1. Наведите курсор на правую границу заголовка столбца (например, между буквами A и B).
  2. Когда курсор превратится в двунаправленную стрелку, дважды кликните левой кнопкой мыши (автоподбор ширины).
  3. Либо перетащите границу вправо вручную.

Проблема 2: Числа сохранены как текст (зеленый треугольник)

Если числа выровнены по левому краю и не участвуют в расчетах, они имеют текстовый формат. Решение через «Текст по столбцам» (самый быстрый метод):

  1. Выделите проблемный столбец.
  2. Перейдите на вкладку ДанныеТекст по столбцам.
  3. В появившемся окне сразу нажмите Готово (настройки менять не нужно). Это принудительно перезапишет формат данных на числовой.

Лайфхак: Если нужно быстро превратить «текстовые числа» в настоящие, введите цифру 1 в любую пустую ячейку, скопируйте её, затем выделите диапазон с проблемами и нажмите: Правка → Вставить специально → Умножить. Это математически преобразует текст в число.

Как сделать обратное: превратить текст в число

Иногда требуется ситуация, когда буквы (например, артикулы с ведущими нулями «0054») должны остаться текстом, но иногда их нужно считать числами.

  1. Выделите ячейки.
  2. Нажмите Ctrl + 1 (Формат ячеек).
  3. Выберите Текстовый, если нужно сохранить ведущие нули.
  4. Выберите Числовой, если нужно проводить вычисления (ведущие нули исчезнут).

Сравнение методов преобразования

ЗадачаМетодПлюсыМинусы
Сумма прописью (рубли)Функция =РУБЛЬ()Не требует макросовРаботает только с валютой, может отсутствовать
Любое число прописьюНадстройка / МакросПолное склонение, гибкостьТребует включения макросов (.xlsm)
Исправление #####Автоширина столбцаМгновенноНе решает проблему, если текст действительно длинный
Текст → ЧислоТекст по столбцамМассовое исправлениеМеняет формат навсегда

Частые ошибки

  • Попытка использовать формат ячеек для перевода в слова. Изменение формата на «Текстовый» не превратит число 123 в слово «сто двадцать три». Оно лишь запретит математические операции с ним.
  • Игнорирование региональных настроек. Разделители дробной части (точка или запятая) могут ломать формулы конвертации. Проверьте настройки в Файл > Параметры > Дополнительно.
  • Слияние ячеек. Часто мешает корректному расширению столбцов и работе макросов. Избегайте слияния в базах данных.

FAQ

Можно ли перевести число в текст без макросов? Полноценно (склоняя падежи) — нет, только через сложные вложенные формулы, которые трудно поддерживать. Для валют попробуйте =РУБЛЬ().

Почему после ввода числа появляется апостроф (')? Апостроф означает, что ячейка принудительно отформатирована как текст перед вводом. Чтобы убрать его, измените формат ячейки на «Общий» или «Числовой» и используйте метод «Текст по столбцам».

Как убрать зеленый треугольник в углу ячейки? Это предупреждение о числе, сохраненном как текст. Выделите ячейки, нажмите на желтый значок восклицательного знака рядом и выберите «Преобразовать в число».