Как использовать функцию VBA IsNumeric (9 примеров)

  • Поделись Этим
Hugh West

Если вы ищете несколько самых простых способов использования VBA IsNumeric тогда вы попали по адресу. Обычно мы используем эту функцию в разделе VBA для проверки того, является ли выражение числом или нет, и в зависимости от выражения возвращает TRUE если выражение является числом, в противном случае FALSE .

Скачать рабочую тетрадь

VBA IsNumeric Function.xlsm

Функция VBA IsNumeric: синтаксис и аргументы

⦿ Синтаксис

IsNumeric (Expression)

⦿ Аргументы

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

⦿ Возвращаемое значение

Вход Возвращаемое значение
Номер TRUE
Не число; строка FALSE

⦿ Версия

Сайт ISNUMERIC функция был представлен в Excel 2000 версии и доступен для всех последующих версий.

9 примеров использования функции VBA IsNumeric

В этой статье мы постараемся продемонстрировать, как можно использовать VBA IsNumeric с некоторыми случайными примерами наряду с некоторыми примерами, включая следующую таблицу.

Мы использовали Microsoft Excel 365 версию здесь, вы можете использовать любые другие версии в зависимости от вашего удобства.

1. Проверка VBA IsNumeric с некоторыми случайными значениями

Здесь мы проверим несколько случайных строк с помощью функции VBA ISNUMERIC , если значения являются числовыми или нет.

Шаг-01 :

➤ Перейти к Разработчик Вкладка>> Visual Basic Вариант.

Затем Редактор Visual Basic откроется.

➤ Перейти к Вставка Вкладка>> Модуль Вариант.

После этого Модуль будет создан.

Шаг-02 :

➤ Напишите следующий код

 Sub checkvalue1() Dim x As Variant x = InputBox("Give any Value") MsgBox IsNumeric(x) End Sub 

Здесь мы объявили x как Вариант и сохранит входное значение. Затем ISNUMERIC вернётся TRUE если входное значение является числовым, в противном случае будет возвращено FALSE Мы найдем вывод в окне сообщения ( MsgBox ).

➤ Нажмите F5 .

Затем вы получите следующее поле ввода, и если вы напишете значение 100 и нажмите OK ,

вы получите сообщение, в котором говорится "Правда" .

Для записи строки Кошка и нажать OK в поле ввода,

Мы получаем сообщение, в котором говорится "Ложь" .

Подробнее: Как использовать функцию VBA Randomize в Excel (5 примеров)

2. Использование VBA IsNumeric с выражением IF-THEN-ELSE

В этом разделе мы будем использовать ISNUMERIC функция с IF-THEN-ELSE заявление в VBA код для определения числовых и нечисловых значений.

Шаги :

➤ Следуйте Шаг-01 секция 1 .

➤ Запишите следующий код

 Sub checkvalue2() Dim x As Variant x = InputBox("Give any Value") If IsNumeric(x) = True Then MsgBox "The Given Value is numeric" Else MsgBox "The Given Value is not numeric" End If End Sub 

Здесь мы объявили x как Вариант и сохранит входное значение. Когда ISNUMERIC вернётся TRUE , ЕСЛИ вернется сообщение, в котором будет сказано "Данное значение является числовым" и если ISNUMERIC возвращает FALSE тогда ЕСЛИ возвращает сообщение с объяснением "Заданное значение не является числовым" .

➤ Нажмите F5 .

Затем вы получите следующее поле ввода, и если вы напишете значение 200 и нажмите OK ,

вы получите сообщение, в котором говорится "Данное значение является числовым" .

Для записи строки Кошка и нажать OK в поле ввода,

Мы получаем сообщение, в котором говорится "Заданное значение не является числовым" .

Читать далее: Выражение VBA Если - Тогда - Иначе в Excel (4 примера)

3. Создание противоположного результата с помощью функции IsNumeric

Здесь мы создадим VBA код, который даст нам результат, обратный результату ISNUMERIC функция , что означает, что для числовых значений мы получим FALSE , а для нечисловых значений возвращает TRUE .

Шаги :

➤ Следуйте Шаг-01 секция 1 .

➤ Запишите следующий код

 Sub checkvalue3() Dim x As Variant x = InputBox("Give any Value") If IsNumeric(x) = True Then MsgBox ("FALSE") Else MsgBox ("TRUE") End If End Sub 

Здесь мы объявили x как Вариант и сохранит входное значение. Когда ISNUMERIC вернётся TRUE , ЕСЛИ вернется сообщение, в котором будет сказано "FALSE" и если ISNUMERIC возвращает FALSE тогда ЕСЛИ возвращает сообщение с объяснением "TRUE" .

➤ Нажмите F5 .

Затем вы получите следующее поле ввода, и если вы напишете значение 25 и нажмите OK ,

вы получите сообщение, в котором говорится "FALSE" .

Для записи строки Аляска и нажать OK в поле ввода,

Мы получаем сообщение, в котором говорится "TRUE" .

Похожие материалы: Функция форматирования VBA в Excel (8 вариантов использования с примерами)

4. Проверка того, являются ли пробелы числовыми или нет

Вы можете легко проверить с помощью VBA код, если пробелы являются числовыми или нет.

Шаги :

➤ Следуйте Шаг-01 секция 1 .

➤ Запишите следующий код

 Sub checkvalue4() Dim x As Variant x = " " MsgBox IsNumeric(x) End Sub 

Здесь мы объявили x как Вариант и он будет хранить Пустой . Тогда ISNUMERIC вернётся TRUE если Пустой является числовым, в противном случае будет возвращено FALSE .

➤ Нажмите F5 .

После этого вы получите окно с сообщением, в котором говорится "Ложь" что означает пробелы не являются числовыми значениями .

Читать далее: Формула Excel для генерации случайного числа (5 примеров)

5. Проверка того, являются ли даты числовыми или нет

В этом разделе мы будем использовать случайную дату и проверять, является ли она числовой или нет.

Шаги :

➤ Следуйте Шаг-01 секция 1 .

➤ Запишите следующий код

 Sub checkvalue5() Dim x As Variant x = "02/02/2022 " MsgBox IsNumeric(x) End Sub 

Здесь мы объявили x как Вариант и он сохранит дату. Затем ISNUMERIC вернётся TRUE если дата имеет числовое значение, в противном случае будет возвращено FALSE .

➤ Нажмите F5 .

После этого вы получите сообщение, в котором будет сказано "Ложь" что означает даты не являются числовыми .

Мы также можем попробовать с Функция DATESERIAL для создания дат и проверки, является ли она числовой или нет.

➤ Введите следующий код

 Sub checkvalue5a() Dim x As Variant x = DateSerial(2022, 2, 2) MsgBox IsNumeric(x) End Sub 

Здесь мы объявили x как Вариант и он будет хранить дату, созданную Функция DATESERIAL . Тогда ISNUMERIC вернётся TRUE если дата имеет числовое значение, в противном случае будет возвращено FALSE .

➤ Нажмите F5 .

В ответ вы получите окно с сообщением следующего содержания "Ложь" и в этот раз.

Читать далее: Функция даты в VBA (12 способов использования макросов с примерами)

Похожие чтения:

  • Как использовать функцию MsgBox в Excel VBA (полное руководство)
  • Использование функции VBA Environ (4 примера)
  • Как использовать VBA и функции в Excel (4 примера)
  • Использование VBA Case Statement (13 примеров)
  • Как использовать функцию Log в Excel VBA (5 подходящих примеров)

6. Проверка того, является ли время числовым или нет

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

Шаги :

➤ Следуйте Шаг-01 секция 1 .

➤ Запишите следующий код

 Sub checkvalue6() Dim x As Variant x = "09:30:00 AM" MsgBox IsNumeric(x) End Sub 

Здесь мы объявили x как Вариант и он сохранит время. Затем ISNUMERIC вернётся TRUE если время является числовым, в противном случае будет возвращено значение FALSE .

➤ Нажмите F5 .

После этого вы получите сообщение, в котором будет сказано "Ложь" что означает время не имеет числового значения .

Вы также можете попробовать с помощью Функция TIMESERIAL для создания дат и проверки, является ли она числовой или нет.

➤ Введите следующий код

 Sub checkvalue6a() Dim x As Variant x = TimeSerial(9, 30, 0) MsgBox IsNumeric(x) End Sub 

Здесь мы объявили x как Вариант и он будет хранить время, созданное Функция TIMESERIAL . Тогда ISNUMERIC вернётся TRUE если время является числовым, в противном случае будет возвращено значение FALSE .

➤ Нажмите F5 .

После этого появится окно с сообщением "Ложь" и в этот раз.

Опять же, мы можем попробовать сослаться на значение времени в ячейке листа.

➤ Введите следующий код

 Sub checkvalue6b() Dim x As Variant x = range("B2").value MsgBox IsNumeric(x) End Sub 

Здесь мы объявили x как Вариант и он будет хранить время, которое находится в B2 клетка. Тогда ISNUMERIC вернётся TRUE если время является числовым, в противном случае будет возвращено значение FALSE .

➤ Нажмите F5 .

Наконец, вы получите окно с сообщением "Правда" на этот раз.

Читать далее: Как использовать VBA TimeSerial в Excel (3 примера)

7. Использование VBA IsNumeric для диапазона значений

Здесь мы проверим, соответствуют ли значения параметра Марки/Грады столбца являются числовыми или нечисловыми и имеют результаты в Проверьте колонна.

Шаги :

➤ Следуйте Шаг-01 секция 1 .

➤ Запишите следующий код

 Sub checkvalue7() Dim cell As Range For Each cell In Range("D5:D11") cell.Offset(0, 1) = IsNumeric(cell) Next cell End Sub 

Мы объявили ячейку как Range и использовали функцию НА цикл для ячеек диапазона "D5:D11" и для этих клеток ISNUMERIC вернётся TRUE если значение числовое, в противном случае будет возвращено FALSE и cell.Offset(0, 1) вернет выходные значения в один столбец позже входного столбца.

➤ Нажмите F5 .

После этого у нас будет TRUE для числовых значений или Маркс и FALSE для нечисловых значений или Градусы .

Читать далее: Как использовать функцию VBA Val в Excel (7 примеров)

8. Создание функции для проверки диапазона значений

В этом разделе мы создадим функцию с параметром VBA ISNUMERIC и проверьте, соответствуют ли значения Марки/Грады столбца являются числовыми или нечисловыми.

Шаг-01 :

➤ Следуйте Шаг-01 секция 1 .

➤ Запишите и сохраните следующий код

 Function IsNumericTest(value As Variant) As Boolean If IsNumeric(value) Then IsNumericTest = True Else IsNumericTest = False End If End Function 

Этот код создаст функцию с именем IsNumericTest .

Шаг-02 :

➤ Вернитесь на основной лист и введите в ячейку следующую формулу E5

=IsNumericTest(D5)

D5 это Марки/Грады студента и IsNumericTest вернётся ИСТИНА/ЛОЖЬ в зависимости от значения.

➤ Нажмите ENTER и перетащите вниз Наполнительная рукоятка инструмент.

Наконец, мы получим TRUE для числовых значений или Маркс и FALSE для нечисловых значений или Градусы .

Похожие материалы: Как использовать функцию VBA DIR в Excel (7 примеров)

9. подсчет нечисловых значений с помощью функции VBA IsNumeric

Мы хотим подсчитать нечисловые значения или оценки Марки/Грады столбец и для этого здесь мы будем использовать VBA ISNUMERIC и имеем общее количество нечисловых значений, которые мы имеем в Граф колонна.

Шаг-01 :

➤ Следуйте Шаг-01 секция 1 .

➤ Запишите и сохраните следующий код

 Function countnonnumeric(value As range) As Long Dim cell As range Dim count As Long For Each cell In value.Cells If Not IsNumeric(cell.value) Then count = count + 1 End If Next countnonnumeric = count End Function 

Этот код создаст функцию с именем countnonnumeric .

Если значение ячейки не является числовым значением, тогда считать увеличится на 1 .

Шаг-02 :

➤ Вернитесь на основной лист и введите следующую формулу

=countnonnumeric(D5:D11)

D5:D11 это диапазон Марки/Грады студентов и countnonnumeric вернет общее количество нечисловых оценок.

➤ Нажмите ENTER

Наконец, вы получите значение 3 что означает, что у вас 3 Оценки в Марки/Грады колонна.

Читать далее: Как вернуть значение в функции VBA (значения из массива и не из массива)

IsNumeric vs ISNUMBER

  • ISNUMERIC проверяет, может ли значение быть преобразовано в число и ISNUMBER проверяет, хранится ли значение в виде числа.
  • Существуют некоторые различия между Функция VBA ISNUMERIC и Excel функция ISNUMBER и мы попытались показать различия ниже, используя ранее созданные нами Функция IsNumericTest и встроенный Excel функция ISNUMBER .

Практическая секция

Для самостоятельного выполнения практики мы предоставили Практика раздел, как показано ниже, в листе с именем Практика Пожалуйста, сделайте это сами.

Заключение

В этой статье мы постарались рассказать о некоторых способах использования VBA ISNUMERIC Если у вас есть какие-либо предложения или вопросы, не стесняйтесь поделиться ими в разделе комментариев.

Хью Уэст — опытный тренер и аналитик Excel с более чем 10-летним опытом работы в отрасли. Он имеет степень бакалавра в области бухгалтерского учета и финансов и степень магистра делового администрирования. Хью страстно любит преподавать и разработал уникальный подход к обучению, которому легко следовать и который легко понять. Его экспертные знания Excel помогли тысячам студентов и специалистов по всему миру улучшить свои навыки и преуспеть в своей карьере. В своем блоге Хью делится своими знаниями со всем миром, предлагая бесплатные учебные пособия по Excel и онлайн-обучение, чтобы помочь отдельным лицам и компаниям полностью раскрыть свой потенциал.