Функция Excel ЕСЛИЧИСЛО с примерами формул
В учебнике объясняется, что такое ISNUMBER в Excel, и приводятся примеры базового и расширенного использования.
Концепция функции ЕЧИСЛО в Excel очень проста — она просто проверяет, является ли заданное значение числом или нет. Важным моментом здесь является то, что практическое использование функции выходит далеко за рамки ее основной концепции, особенно в сочетании с другими функциями в более крупных формулах.
Функция ЕЧИСЛО Excel
Функция ЕЧИСЛО в Excel проверяет, содержит ли ячейка числовое значение или нет. Он относится к группе функций ИС.
Функция доступна во всех версиях Excel для Office 365, Excel 2019, Excel 2016, Excel 2013, Excel 2010, Excel 2007 и более ранних версиях.
Синтаксис ISNUMBER требует только одного аргумента:
=ЧИСЛО(значение)
Где ценность это значение, которое вы хотите проверить. Обычно он представлен ссылкой на ячейку, но вы также можете указать реальное значение или вложить другую функцию в ISNUMBER для проверки результата.
Если ценность является числовым, функция возвращает ИСТИНА. Для всего остального (текстовые значения, ошибки, пробелы) ISNUMBER возвращает FALSE.
В качестве примера, давайте проверим значения в ячейках с A2 по A6, и мы обнаружим, что первые 3 значения являются числами, а последние два — текстом:
2 вещи, которые вы должны знать о функции ISNUMBER в Excel
Здесь следует отметить несколько интересных моментов:
- Во внутреннем представлении Excel даты и время являются числовыми значениями, поэтому формула ЕЧИСЛО возвращает для них ИСТИНА (см. B3 и B4 на снимке экрана выше).
- Для чисел, сохраненных в виде текста, функция ЕЧИСЛО возвращает ЛОЖЬ (см. этот пример).
Примеры формулы ЕЧИСЛО в Excel
В приведенных ниже примерах показано несколько распространенных и несколько нетривиальных способов использования ISNUMBER в Excel.
Проверить, является ли значение числом
Если у вас есть множество значений на листе и вы хотите знать, какие из них являются числами, ISNUMBER — это правильная функция для использования.
В этом примере первое значение находится в A2, поэтому мы используем приведенную ниже формулу, чтобы проверить его, а затем перетащите формулу вниз на столько ячеек, сколько необходимо:
=ЧИСЛО(A2)
Обратите внимание, хотя все значения выглядят как числа, формула ЕЧИСЛО вернула ЛОЖЬ для ячеек A4 и A5, что означает, что эти значения являются числовыми строками, т. е. числами, отформатированными как текст. Для этого могут быть разные причины, например ведущие нули, предшествующий апостроф и т. д. Какой бы ни была причина, Excel не распознает такие значения как числа. Итак, если ваши значения не вычисляются правильно, первое, что вам нужно проверить, это действительно ли они являются числами с точки зрения Excel, а затем преобразовать текст в число, если это необходимо.
формула ПОИСК ISNUMBER в Excel
Помимо определения чисел функция ЕЧИСЛО Excel также может проверять, содержит ли ячейка определенный текст как часть содержимого. Для этого используйте ISNUMBER вместе с функцией SEARCH.
В общем виде формула выглядит следующим образом:
IНОМЕР(ПОИСК(подстрока, клетка))
Где подстрока это текст, который вы хотите найти.
В качестве примера давайте проверим, содержит ли строка в A3 определенный цвет, скажем, красный:
=ISNUMBER(ПОИСК(“красный”, A3))
Эта формула хорошо работает для одной ячейки. Но поскольку наша примерная таблица (см. ниже) содержит три разных цвета, написание отдельной формулы для каждого из них было бы пустой тратой времени. Вместо этого мы будем ссылаться на ячейку, содержащую интересующий цвет (B2).
=ISNUMBER(ПОИСК(B$2, $A3))
Чтобы формула корректно копировалась вниз и вправо, обязательно зафиксируйте следующие координаты знаком $:
- В подстрока ссылку, заблокируйте строку (B$2), чтобы скопированные формулы всегда выбирали подстроки в строке 2. Ссылка на столбец является относительной, поскольку мы хотим, чтобы она корректировалась для каждого столбца, т. е. когда формула копируется в C3, ссылка на подстроку будет изменить на 2 канадских доллара.
- в исходная ячейка ссылку, заблокируйте столбец ($A3), чтобы все формулы проверяли значения в столбце A.
На скриншоте ниже показан результат:
ISNUMBER FIND – формула с учетом регистра
Так как функция ПОИСК без учета регистра, приведенная выше формула не различает прописные и строчные символы. Если вы ищете формулу с учетом регистра, используйте функцию НАЙТИ, а не ПОИСК.
IЧИСЛО(НАЙТИ(подстрока, клетка))
Для нашего примера набора данных формула будет иметь следующий вид:
=ЧИСЛО(НАЙТИ(B$2, $A3))
Как работает эта формула
Логика формулы вполне очевидна и проста для понимания:
- Функция ПОИСК/НАЙТИ ищет подстроку в указанной ячейке. Если подстрока найдена, возвращается позиция первого символа. Если подстрока не найдена, функция выдает ошибку #ЗНАЧ! ошибка.
- Функция ISNUMBER берет его оттуда и обрабатывает числовые позиции. Таким образом, если подстрока найдена и ее позиция возвращается в виде числа, ISNUMBER выводит TRUE. Если подстрока не найдена и #VALUE! возникает ошибка, ISNUMBER выводит FALSE.
ЕСЛИ ЕСЛИ ЕСЛИ ЧИСЛО формула
Если вы хотите получить формулу, которая выводит что-то отличное от ИСТИНА или ЛОЖЬ, используйте ЕСЛИЧИСЛО вместе с функцией ЕСЛИ.
Пример 1. Ячейка содержит какой текст
Продолжая предыдущий пример, предположим, что вы хотите пометить цвет каждого элемента знаком «x», как показано в таблице ниже.
Для этого просто оберните Формула ПОИСКА НОМЕРА в оператор ЕСЛИ:
=ЕСЛИ(ЧИСЛО(ПОИСК(B$2, $A3)), “x”, “”)
Если ISNUMBER возвращает TRUE, функция ЕСЛИ выводит «x» (или любое другое значение, которое вы указываете для значение_если_истина аргумент). Если ISNUMBER возвращает FALSE, функция ЕСЛИ выводит пустую строку (“”).
Пример 2. Первый символ в ячейке — число или текст
Представьте, что вы работаете со списком буквенно-цифровых строк и хотите знать, является ли первый символ строки цифрой или буквой.
Чтобы построить такую формулу, нам понадобятся 4 разные функции:
- Функция LEFT извлекает первый символ из начала строки, скажем, в ячейке A2:
ВЛЕВО(A2, 1)
- Поскольку LEFT относится к категории текстовых функций, ее результатом всегда является текстовая строка, даже если она содержит только числа. Поэтому перед проверкой извлеченного символа нам нужно попробовать преобразовать его в число. Для этого используйте либо функцию ЗНАЧ, либо двойной унарный оператор:
ЗНАЧЕНИЕ(ЛЕВО(A2, 1)) или (–ЛЕВО(A2, 1))
- Функция ISNUMBER определяет, является ли извлеченный символ числовым или нет:
IЧИСЛО(ЗНАЧЕНИЕ(ЛЕВО(A2, 1)))
- В зависимости от результата ISNUMBER (ИСТИНА или ЛОЖЬ) функция ЕСЛИ возвращает «Число» или «Букву» соответственно.
Предполагая, что мы тестируем строку в A2, полная формула принимает следующий вид:
=ЕСЛИ(ЧИСЛО(ЗНАЧЕНИЕ(ЛЕВО(A2, 1))), “Число”, “Буква”)
или же
=ЕСЛИ(ЧИСЛО(–ЛЕВО(A2, 1)), “Число”, “Буква”)
Функция ISNUMBER также удобна для извлечения чисел из строки. Вот пример: Получить число из любой позиции в строке.
Проверить, не является ли значение числом
Хотя в Microsoft Excel есть специальная функция ISNONTEXT, позволяющая определить, не является ли значение ячейки текстом, аналогичная функция для чисел отсутствует.
Простое решение — использовать ISNUMBER в сочетании с NOT, которое возвращает противоположное логическому значению. Другими словами, когда ISNUMBER возвращает TRUE, NOT преобразует его в FALSE, и наоборот.
Чтобы увидеть его в действии, обратите внимание на результаты следующей формулы:
=НЕ(ЧИСЛО(A2))
Другой подход заключается в совместном использовании функций ЕСЛИ и ЕСЛИЧИСЛО:
=ЕСЛИ(ЧИСЛО(A2), “”, “Не число”)
Если A2 является числовым, формула ничего не возвращает (пустая строка). Если A2 не является числом, формула говорит об этом заранее: «Не число».
Если вы хотите выполнить некоторые вычисления с числами, поместите уравнение или другую формулу в поле значение_если_истина аргумент вместо пустой строки. Например, приведенная ниже формула будет умножать числа на 10 и давать «Не число» для нечисловых значений:
=ЕСЛИ(ЧИСЛО(A2), A2*10, “Не число”)
Проверьте, содержит ли диапазон какое-либо число
В ситуации, когда вы хотите проверить весь диапазон чисел, используйте функцию ЕСЧИСЛО в сочетании с СУММПРОИЗВ следующим образом:
СУММПРОИЗВ(–ЧИСЛО(диапазон))>0
СУММПРОИЗВ(ЧИСЛО(диапазон)*1)>0
Например, чтобы узнать, содержит ли диапазон A2:A5 какое-либо числовое значение, формулы будут выглядеть следующим образом:
=СУММПРОИЗВ(–ЧИСЛО(A2:A5))>0
=СУММПРОИЗВ(ЧИСЛО(A2:A5)*1)>0
Если вы хотите вывести «Да» и «Нет» вместо ИСТИНА и ЛОЖЬ, используйте оператор IF в качестве «оболочки» для приведенных выше формул. Например:
=ЕСЛИ(СУММПРОИЗВ(–ЧИСЛО(A2:A5))>0, “Да”, “Нет”)
Как работает эта формула
В основе формулы функция ЕЧИСЛО оценивает каждую ячейку указанного диапазона, скажем, B2:B5, и возвращает ИСТИНА для чисел и ЛОЖЬ для всего остального. Поскольку диапазон содержит 4 ячейки, массив имеет 4 элемента:
{ИСТИНА; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ}
Операция умножения или двойной унарный (–) преобразует ИСТИНА и ЛОЖЬ в 1 и 0 соответственно:
{1;0;0;0}
Функция СУММПРОИЗВ складывает элементы массива. Если результат больше нуля, это означает, что в диапазоне есть хотя бы одно число. Итак, вы используете «> 0», чтобы получить окончательный результат ИСТИНА или ЛОЖЬ.
ISNUMBER в условном форматировании для выделения ячеек, содержащих определенный текст
Если вы хотите выделить ячейки или целые строки, содержащие определенный текст, создайте правило условного форматирования на основе ПОИСК ПО НОМЕРУ (без учета регистра) или НАЙТИ НОМЕР (с учетом регистра) формула.
В этом примере мы собираемся выделить строки на основе значения в столбце A. Точнее, мы выделим элементы, содержащие слово «красный». Вот как:
- Выберите все строки данных (в этом примере A2: C6) или только столбец, в котором вы хотите выделить ячейки.
- На Дом вкладка, в Стили группа, нажмите Новое правило > Используйте формулу, чтобы определить, какие ячейки нужно отформатировать.
- в Форматировать значения, где эта формула верна введите приведенную ниже формулу (обратите внимание, что координата столбца заблокирована знаком $):
=ISNUMBER(ПОИСК(“красный”, $A2))
- Нажмите на Формат кнопку и выберите нужный формат.
- Нажмите ОК дважды.
Если у вас мало опыта работы с условным форматированием Excel, вы можете найти подробные шаги со снимками экрана в этом руководстве: Как создать правило условного форматирования на основе формулы.
В результате подсвечиваются все элементы красного цвета:
Вместо «жесткого кодирования» цвета в правиле условного форматирования вы можете ввести его в предопределенную ячейку, скажем, E2, и ссылаться на эту ячейку в своей формуле (обратите внимание на абсолютную ссылку на ячейку $E$2). Кроме того, вам нужно проверить, не пуста ли ячейка ввода:
=И(ISNUMBER(ПОИСК($E$2, $A2)), $E$2<>“”)
В результате вы получите более гибкое правило, которое выделяет строки на основе вашего ввода в E2:
Вот как можно использовать функцию ЕЧИСЛО в Excel. Я благодарю вас за чтение и надеюсь увидеть вас в нашем блоге на следующей неделе!
Доступные загрузки
Примеры формулы ЕЧИСЛО в Excel