Цей підручник навчить вас користуватися 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, яка перевіряє, чи є числовим значенням, і в результаті повертає логічне значення TRUE або FALSE.
Функція може приймати значення змінної або комірки.
Ось приклад взяття значення комірки:
12345 | Якщо IsNumeric (Sheet1.Range ("A1"). Значення) = Істина. Тоді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"). Значення) = True ТодіMsgBox "Значення в A1 числове"ІнакшеMsgBox "Значення в A1 не числове"Закінчити Якщо |
Як видно з коду, відмінність полягає у синтаксисі під час виклику функції. Оскільки IsNumber є функцією Excel, нам потрібно поставити Додаток.Функція робочого аркуша перед викликом функції.