Как в Excel сделать текст числом: от простых способов до продвинутых приёмов

Почему Excel воспринимает числа как текст и как это исправить

Вы скачали данные из , импортировали их из CSV или скопировали с веб-страницы, а Excel упорно отказывается воспринимать числа как числа? Вместо суммирования ячеек получаете ошибку #ЗНАЧ!, а зелёные треугольники в углу ячеек раздражают как никогда. Эта проблема знакома каждому, кто работает с внешними источниками данных. Причина кроется в том, что Excel автоматически присваивает ячейкам текстовый формат, если данные содержат скрытые символы (пробелы, апострофы, неразрывные пробелы) или были импортированы из систем, где числа хранятся как строки.

Классический пример: вы видите в ячейке 12345, но Excel воспринимает это как текст '12345 (обратите внимание на апостроф). Или хуже — число отображается с выравниванием по левому краю (признак текстового формата), а все попытки применить математические операции заканчиваются ошибками. Решение есть, и их несколько — от элементарных до продвинутых, в зависимости от объёма данных и их структуры.

В этой статье мы разберём 7 проверенных способов преобразования текста в числа, включая малоизвестные приёмы для сложных случаев (например, когда числа записаны с разделителями тысяч или содержат постфиксы вроде «шт.» или «$»). Вы узнаете, какой метод самый быстрый для небольших таблиц, а какой подойдёт для обработки десятков тысяч строк без потери данных.

Способ 1: Исправление формата ячейки вручную

Самый очевидный, но часто игнорируемый метод — принудительное изменение формата ячейки. Он работает, если текстовые числа не содержат посторонних символов (например, 1 000 вместо 1000 или 123,45$). Вот как это сделать:

  1. Выделите проблемные ячейки (или весь столбец, нажав на его заголовок).
  2. Перейдите на вкладку Главная → группа Число.
  3. В выпадающем списке форматов выберите Числовой, Денежный или Финансовый (в зависимости от задачи).

Если после этого в ячейках появились знаки ########, значит, столбец слишком узкий — просто растяните его границы двойным кликом по правому краю заголовка.

⚠️ Внимание: Этот способ не сработает, если текстовые числа содержат невидимые символы (например, апостроф перед числом или неразрывный пробел). В таком случае сначала используйте функцию СЖПРОБЕЛЫ или ПЕЧСИМВ для очистки данных.

Способ 2: Преобразование через «Текст по столбцам»

Метод Текст по столбцам — универсальное решение для импортированных данных, особенно если числа содержат разделители (запятые, точки, пробелы). Он работает даже когда другие способы бессильны. Алгоритм:

  1. Выделите столбец с текстовыми числами.
  2. Перейдите на вкладку ДанныеТекст по столбцам.
  3. В мастере импорта выберите С разделителямиДалее.
  4. Снимите все галочки в разделе Разделители (оставьте пустым) → Далее.
  5. На последнем шаге выберите формат Общий или Числовой для столбца → Готово.

Этот метод особенно полезен для чисел с разделителями тысяч (например, 1 000 000 или 1,000,000), так как позволяет задать правильный разделитель на этапе импорта. Главный плюс — он обрабатывает сразу весь столбец, не требуя формул или макросов.

Почему иногда "Текст по столбцам" не работает?

Если после применения метода числа всё равно остаются текстовыми, проверьте:

- Наличие скрытых символов (используйте функцию КОДСИМВ для первой ячейки).

- Локальные настройки Excel (в некоторых версиях разделителем целой и дробной части служит запятая, а не точка).

- Формат ячейки после преобразования (иногда Excel снова присваивает текстовый формат).

Способ 3: Использование функции ЗНАЧЕН (VALUE)

Функция ЗНАЧЕН (или VALUE в английской версии) специально создана для преобразования текста в числа. Её синтаксис прост:

=ЗНАЧЕН(A1)

Где A1 — ячейка с текстовым числом. Особенности метода:

  • 🔹 Работает только с "чистыми" текстовыми числами (например, "123" или "12,34").
  • 🔹 Не справится с постфиксами ("100$") или префиксами ("Price: 100").
  • 🔹 Возвращает ошибку #ЗНАЧ!, если ячейка содержит нечисловые символы.

Для обработки большого диапазона:

  1. Введите формулу в первую ячейку нового столбца.
  2. Растяните её на весь диапазон двойным кликом по маркеру автозаполнения.
  3. Скопируйте результаты (Ctrl+C) и вставьте как Значения (Ctrl+Shift+VЗначения).
📊 Какой способ преобразования текста в числа вы используете чаще?
Изменение формата ячейки
Функция ЗНАЧЕН
Текст по столбцам
Другие методы

Способ 4: Умножение на 1 (самый быстрый трюк)

Малоизвестный, но крайне эффективный приём — умножение текстовых чисел на 1. Excel автоматически преобразует текст в число при математических операциях. Как это работает:

  1. В пустой ячейке введите 1.
  2. Скопируйте её (Ctrl+C).
  3. Выделите диапазон с текстовыми числами.
  4. Нажмите Правая кнопка мыши → Специальная вставка → Умножить.

Преимущества метода:

  • 🔹 Мгновенно обрабатывает тысячи ячеек.
  • 🔹 Не требует формул или макросов.
  • 🔹 Сохраняет исходные данные (в отличие от ЗНАЧЕН, которая возвращает ошибку при некорректных данных).
⚠️ Внимание: Если в ячейках есть нечисловые символы (например, "100 руб"), Excel преобразует их в 0. Перед использованием этого метода очистите данные функцией ПОДСТАВИТЬ или ЛЕВСИМВ.

Способ 5: Очистка данных с помощью ПЕЧСИМВ и СЖПРОБЕЛЫ

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

=ЗНАЧЕН(СЖПРОБЕЛЫ(ПЕЧСИМВ(A1)))

Разберём по шагам:

  1. ПЕЧСИМВ(A1) — удаляет все непечатаемые символы (включая апострофы и неразрывные пробелы).
  2. СЖПРОБЕЛЫ — заменяет множественные пробелы на одинарные.
  3. ЗНАЧЕН — преобразует очищенный текст в число.

Для чисел с постфиксами (например, "100 кг") используйте ПОДСТАВИТЬ:

=ЗНАЧЕН(ПОДСТАВИТЬ(A1; " кг"; ""))
Исходные данные Формула Результат
'123 =ЗНАЧЕН(СЖПРОБЕЛЫ(ПЕЧСИМВ(A1))) 123
1 000 руб =ЗНАЧЕН(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1); " руб"; "")) 1000
12,34 =ЗНАЧЕН(СЖПРОБЕЛЫ(A1)) 12,34

☑️ Подготовка данных перед преобразованием

Выполнено: 0 / 4

Способ 6: Power Query для массовой обработки

Если вам нужно преобразовать десятки тысяч строк с текстовыми числами, ручные методы не подойдут. Здесь на помощь придёт Power Query — инструмент для обработки данных, встроенный в Excel 2016 и новее. Алгоритм:

  1. Выделите диапазон данных и перейдите на вкладку ДанныеИз таблицы/диапазона.
  2. В открывшемся редакторе Power Query выберите столбец с текстовыми числами.
  3. На вкладке Преобразование нажмите Тип данных: Заменить на → Число.
  4. При необходимости настройте локаль (например, для чисел с запятой как разделителем).
  5. Нажмите Закрыть и загрузить.

Power Query автоматически удаляет невидимые символы, заменяет разделители и преобразует данные без потерь. Главное преимущество — обработка миллионов строк за секунды и возможность сохранения шагов для повторного использования.

Способ 7: Макрос VBA для автоматического преобразования

Для пользователей, знакомых с VBA, есть универсальный макрос, который преобразует все текстовые числа в выделенном диапазоне:

Sub TextToNumber()

Dim rng As Range

For Each rng In Selection

If IsNumeric(rng.Value) Then

rng.Value = Val(rng.Value)

rng.NumberFormat = "General"

End If

Next rng

End Sub

Как использовать:

  1. Нажмите Alt+F11, чтобы открыть редактор VBA.
  2. Вставьте код в новый модуль (Insert → Module).
  3. Выделите диапазон с текстовыми числами и запустите макрос (F5).

Макрос обрабатывает только те ячейки, которые могут быть преобразованы в числа (игнорируя ячейки с буквами или смешанными данными). Это безопаснее, чем ручные методы, так как не затрагивает нечисловые данные.

⚠️ Внимание: Перед запуском макроса сохраните файл в формате .xlsm (с поддержкой макросов), иначе код не сработает. Также отключите защиту листа, если она включена.

Сравнение методов: какой выбрать?

Не все способы одинаково эффективны. Вот краткое сравнение для разных сценариев:

Метод Скорость Объём данных Сложность Когда использовать
Изменение формата ⚡ Мгновенно Малый Простые случаи без скрытых символов
ЗНАЧЕН ⚡ Быстро Средний ⭐⭐ Чистые текстовые числа
Умножение на 1 ⚡⚡ Очень быстро Большой Массовая обработка без постфиксов
Текст по столбцам ⏳ Медленно Любой ⭐⭐ Числа с разделителями или импорт из CSV
Power Query ⚡⚡⚡ Мгновенно Очень большой ⭐⭐⭐ Сложные данные (100 000+ строк)

Для одноразовых задач подойдёт ЗНАЧЕН или умножение на 1. Если данные поступают регулярно (например, из или CRM), настройте Power Query — это сэкономит часы работы в будущем.

FAQ: Частые вопросы о преобразовании текста в числа

Почему после преобразования числа отображаются как ########?

Это означает, что столбец слишком узкий для отображения числа. Растяните его двойным кликом по правому краю заголовка столбца. Также проверьте, не установлен ли в ячейке формат даты — Excel может воспринимать большие числа (например, 44196) как даты.

Как преобразовать числа с разделителями тысяч (например, 1 000 000)?

Используйте Текст по столбцам (способ 2) или функцию ПОДСТАВИТЬ для удаления пробелов:

=ЗНАЧЕН(ПОДСТАВИТЬ(A1; " "; ""))

Если разделитель — запятая (например, 1,000,000), замените её на пустую строку или точку (в зависимости от локальных настроек Excel).

Можно ли автоматически преобразовывать текст в числа при импорте из CSV?

Да, при импорте через Данные → Из текста/CSV на этапе загрузки выберите Преобразовать данные и укажите формат Числовой для нужных столбцов. Также можно использовать Power Query для создания шаблона импорта.

Почему функция ЗНАЧЕН возвращает ошибку #ЗНАЧ!?

Ошибка возникает, если ячейка содержит нечисловые символы (буквы, знаки валюты, текстовые постфиксы). Перед использованием ЗНАЧЕН очистите данные с помощью ПОДСТАВИТЬ, ЛЕВСИМВ или ПРАВСИМВ. Например:

=ЗНАЧЕН(ЛЕВСИМВ(A1; НАЙТИ(" "; A1)-1))

Эта формула извлечёт числовую часть из строки вида "100 кг".

Как преобразовать текстовые числа в даты?

Если текстовые данные представляют даты (например, "01.01.2023"), используйте функцию ДАТАЗНАЧ:

=ДАТАЗНАЧ(A1)

Для нестандартных форматов (например, "2023/01/01") комбинируйте ДАТА с ЛЕВСИМВ/ПСТР:

=ДАТА(ЛЕВСИМВ(A1;4); ПСТР(A1;6;2); ПСТР(A1;9;2))