Как определить, является ли значение в ячейке числом

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

Чтобы быстро проверить, является ли значение в ячейке числом, используйте функцию =ЕЧИСЛО(ячейка) (в английской версии =ISNUMBER). Она возвращает ИСТИНА, если содержимое — число, и ЛОЖЬ, если это текст, ошибка или пустая ячейка. Для текста, выглядящего как число (например, "123"), предварительно примените преобразование через двойной минус: =ЕЧИСЛО(--ячейка).

В Excel визуальное сходство не гарантирует правильный тип данных. Текст «100» и число 100 выглядят одинаково, но ведут себя по-разному в формулах. Ниже приведены надежные способы диагностики и исправления таких ситуаций.

Функция ЕЧИСЛО (ISNUMBER): базовая проверка

Функция ЕЧИСЛО — основной инструмент для логической проверки типа данных. Она анализирует внутреннее представление значения, а не его отображение.

Синтаксис: =ЕЧИСЛО(значение)

Примеры работы:

Значение в A1ФормулаРезультатПояснение
450=ЕЧИСЛО(A1)ИСТИНАОбычное число
"Текст"=ЕЧИСЛО(A1)ЛОЖЬТекстовая строка
12.05.2026=ЕЧИСЛО(A1)ИСТИНАДаты хранятся как числа
(пусто)=ЕЧИСЛО(A1)ЛОЖЬПустая ячейка не считается числом
"50"=ЕЧИСЛО(A1)ЛОЖЬЧисло, записанное как текст

Даты и время — это числа. В Excel даты хранятся как порядковые номера дней (например, 45423), а время — как дробная часть суток. Поэтому ЕЧИСЛО вернет ИСТИНА для любой корректной даты. Если нужно отличить дату от обычного числа, потребуется проверка формата ячейки.

Работа с числами, сохраненными как текст

Частая проблема при импорте данных из 1С, банковских выписок или веб-сайтов — цифры сохраняются в текстовом формате. Функция ЕЧИСЛО сразу вернет ЛОЖЬ. Чтобы обойти это, нужно принудительно привести тип данных к числовому внутри формулы.

Метод двойного минуса (--)

Оператор унарного минуса преобразует текст в число. Двойное применение (--) убирает знак и возвращает положительное числовое значение.

  • Формула: =ЕЧИСЛО(--A1)
  • Логика: Если в A1 текст "100", первый минус пытается сделать из него -100 (успешно), второй превращает обратно в 100. ЕЧИСЛО видит число и возвращает ИСТИНА. Если в A1 слово "Сто", возникнет ошибка #ЗНАЧ!.

Функция ЗНАЧЕН (VALUE)

Аналогичный результат дает функция ЗНАЧЕН, которая специально предназначена для конвертации текстовых строк в числа.

  • Формула: =ЕЧИСЛО(ЗНАЧЕН(A1))
  • Нюанс: Эта функция чувствительна к региональным настройкам (разделители десятичных дробей).

Обработка ошибок Если ячейка содержит нечисловой текст (например, "Н/Д" или "Ошибка"), формулы с -- или ЗНАЧЕН вернут ошибку #ЗНАЧ!, что может сломать дальнейшие расчеты. Всегда оборачивайте проверку в ЕСЛИОШИБКА: =ЕСЛИОШИБКА(ЕЧИСЛО(--A1); ЛОЖЬ)

Комплексные проверки и очистка данных

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

Учет пробелов и скрытых символов

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

=ЕЧИСЛО(--СЖПРОБЕЛЫ(A1))

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

Исключение пустых ячеек

Пустая ячейка часто нежелательна в отчетах, хотя ЕЧИСЛО и так возвращает для нее ЛОЖЬ. Для строгой валидации (чтобы ячейка была заполнена именно числом) используйте связку с И (AND):

=И(A1<>""; ЕЧИСЛО(A1))

Эта формула вернет ИСТИНА только если ячейка не пуста и содержит числовое значение.

Практические сценарии использования

1. Подсветка ошибок условным форматированием

Чтобы визуально выделить ячейки, где должны быть числа, но введен текст:

  1. Выделите диапазон данных.
  2. Выберите Главная > Условное форматирование > Создать правило.
  3. Используйте формулу: =НЕ(ЕЧИСЛО(--A1)) (замените A1 на первую ячейку диапазона).
  4. Задайте красный цвет заливки. Теперь любой текст, включая числа в текстовом формате, будет подсвечен.

2. Фильтрация данных для сводных таблиц

Перед построением сводной таблицы убедитесь, что поля для суммирования содержат реальные числа. Если столбец содержит смесь чисел и текста, сумма будет равна 0.

  • Решение: Добавьте вспомогательный столбец с формулой =--A2 и протяните её вниз. Это массово конвертирует текстовые числа в настоящие. Затем скопируйте результат и вставьте его как Значения поверх исходных данных.

3. Проверка результатов вычислений

Иногда формула должна вернуть число, но из-за ошибки в исходных данных возвращает текст или ошибку. =ЕСЛИ(ЕЧИСЛО(ВПР(...)); ВПР(...); "Проверьте исходные данные") Такая конструкция страхует отчет от поломки при некорректном поиске.

Частые ошибки и решения

ПроблемаПричинаРешение
#ЗНАЧ! в формулеПопытка преобразовать текст ("абв") в число через -- или ЗНАЧЕН.Оберните формулу в ЕСЛИОШИБКА(...; ЛОЖЬ).
ЛОЖЬ для видимого числаЧисло сохранено как текст (зеленый треугольник в углу ячейки).Используйте =--A1 или инструмент «Преобразовать в число» в меню ошибки.
Разделитель дробиИспользование точки вместо запятой (или наоборот) в функции ЗНАЧЕН.Используйте ЧИСТРОМ (NUMBERVALUE) с указанием разделителей, если настройки системы отличаются от формата данных.
Дата считается текстомДата импортирована как строка "20.01.2026".Примените ДАТАЗНАЧ (DATEVALUE) перед проверкой: =ЕЧИСЛО(ДАТАЗНАЧ(A1)).

FAQ

В чем разница между числом 100 и текстом "100"? Число участвует в математических операциях (суммирование, среднее). Текст "100" игнорируется функциями СУММ и СРЗНАЧ, считаясь нулем или просто пропускается.

Как быстро исправить весь столбец с числами-текстом? Выделите столбец, перейдите на вкладку Данные > Текст по столбцам и сразу нажмите Готово. Это принудительно перезапишет формат ячеек, превратив текст в числа без использования формул.

Почему ЕЧИСЛО возвращает ИСТИНА для даты? Потому что для Excel дата — это количество дней, прошедших с 1 января 1900 года. 12.04.2026 — это просто число 45759, отформатированное для отображения как дата.