Использование Isnumeric и Isnumber в VBA

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

IsNumeric - это встроенная функция VBA, а IsNumber - это функция Excel, которую можно вызвать из кода VBA.

Разница между IsNumber и IsNumeric в VBA

IsNumber проверяет, сохранено ли значение как число. В то время как IsNumeric проверяет, можно ли преобразовать значение в число.

Например, если вы передадите пустую ячейку в качестве параметра, IsNumber вернет FALSE, а IsNumeric вернет TRUE. Кроме того, если вы передадите ячейку, содержащую число, сохраненное в виде текста, IsNumber вернет FALSE и IsNumeric TRUE.

Вам нужно обратить внимание на эти ограничения обеих функций и решить, в каких случаях лучше использовать IsNumeric, а когда IsNumber.

Использование IsNumeric в VBA

IsNumeric - это функция VBA, которая проверяет, является ли значение числовым, и в результате возвращает логическое значение ИСТИНА или ЛОЖЬ.

Функция может принимать переменную или значение ячейки.

Вот пример получения значения ячейки:

12345 Если IsNumeric (Sheet1.Range ("A1"). Value) = True, тоMsgBox "Значение в A1 является числовым"ЕщеMsgBox «Значение в A1 не является числовым»Конец, если

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

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

123456789 Dim n как вариантn = Sheet1.Range ("A1"). ЗначениеЕсли IsNumeric (n) = True, тоMsgBox "Значение в A1 является числовым"ЕщеMsgBox «Значение в A1 не является числовым»Конец, если

Использование IsNumber в VBA

IsNumber - это функция Excel, которую можно использовать в VBA. Он имеет почти такой же вывод, что и IsNumeric. Давайте посмотрим на пример функции IsNumber:

123456789 Если Application.WorksheetFunction.IsNumber (Sheet1.Range ("A1"). Value) = True, тоMsgBox "Значение в A1 является числовым"ЕщеMsgBox «Значение в A1 не является числовым»Конец, если

Как видно из кода, разница заключается в синтаксисе при вызове функции. Поскольку IsNumber - это функция Excel, нам нужно поставить Application.WorksheetFunction перед вызовом функции.

Вы поможете развитию сайта, поделившись страницей с друзьями

wave wave wave wave wave