Spis treści
Jeśli szukasz najprostszych sposobów na wykorzystanie VBA IsNumeric to jesteś we właściwym miejscu. Zwykle używamy tej funkcji w VBA aby sprawdzić czy wyrażenie jest liczbą czy nie i w zależności od wyrażenia zwróci TRUE jeśli wyrażenie jest liczbą w przeciwnym razie FALSE .
Pobierz Workbook
VBA IsNumeric Function.xlsmVBA IsNumeric Funkcja: Składnia & Argumenty
⦿ Składnia
IsNumeric (Expression)
⦿ Argumenty
Argument | Wymagane/opcjonalne | Wyjaśnienie |
---|---|---|
Ekspresja | Wymagane | Jest to wariant, który ma być sprawdzony, czy jest to liczba, czy nie. |
⦿ Wartość zwrotna
Wejście | Wartość zwrotna |
---|---|
Numer | TRUE |
Not a Number; String | FALSE |
⦿ Wersja
Na stronie Funkcja ISNUMERIC został wprowadzony w Excel 2000 wersji i jest dostępny dla wszystkich wersji po niej.
9 Przykładów użycia funkcji VBA IsNumeric
W tym artykule postaramy się pokazać zastosowania VBA IsNumeric z kilkoma losowymi przykładami wraz z.
Użyliśmy Microsoft Excel 365 wersja tutaj, możesz użyć dowolnych innych wersji według swojej wygody.
1) Sprawdzanie VBA IsNumeric z niektórymi losowymi wartościami
Tutaj przetestujemy kilka losowych ciągów znaków za pomocą VBA ISNUMERIC , czy wartości są numeryczne czy nie.
Krok-01 :
➤ Idź do Deweloper Tab>> Visual Basic Opcja.
Następnie. Edytor Visual Basic otworzy się.
➤ Idź do Wkładka Tab>> Moduł Opcja.
Po tym, a Moduł zostanie utworzony.
Step-02 :
➤ Napisz następujący kod
Sub checkvalue1() Dim x As Variant x = InputBox("Podaj dowolną wartość") MsgBox IsNumeric(x) End Sub
Tutaj zadeklarowaliśmy x jako Wariant i zapisze wartość wejściową. Następnie ISNUMERIC zwróci TRUE jeżeli wartość wejściowa jest numeryczna, w przeciwnym razie zwróci FALSE Dane wyjściowe znajdziemy w oknie komunikatu ( MsgBox ).
➤ Prasa F5 .
Następnie otrzymasz następujące pole wejściowe i jeśli wpiszesz wartość 100 i nacisnąć OK ,
pojawi się okno z komunikatem o treści "True" .
Do zapisania ciągu znaków Kot i naciskając OK w polu wprowadzania danych,
Pojawia się okno z komunikatem o treści "False" .
Read More: Jak używać funkcji VBA Randomize w Excelu (5 przykładów)
2. użycie VBA IsNumeric z IF-THEN-ELSE Statement
W tej sekcji będziemy używać Funkcja ISNUMERIC z IF-THEN-ELSE oświadczenie w VBA kod definiujący wartości numeryczne i nie numeryczne.
Kroki :
➤ Follow Krok-01 sekcji 1 .
➤ Zapisz następujący kod
Sub checkvalue2() Dim x As Variant x = InputBox("Podaj dowolną wartość") If IsNumeric(x) = True Then MsgBox "Podana wartość jest liczbowa" Else MsgBox "Podana wartość nie jest liczbowa" End If End Sub
Tutaj zadeklarowaliśmy x jako Wariant i zapisze wartość wejściową. Gdy ISNUMERIC zwróci TRUE , JEŚLI zwróci komunikat o treści "The Given Value is numeric" i jeśli ISNUMERIC zwraca FALSE to JEŚLI zwraca komunikat wyjaśniający "The Given Value is not numeric" .
➤ Prasa F5 .
Następnie otrzymasz następujące pole wejściowe i jeśli wpiszesz wartość 200 i nacisnąć OK ,
pojawi się okno z komunikatem o treści "The Given Value is numeric" .
Do zapisania ciągu znaków Kot i naciskając OK w polu wprowadzania danych,
Pojawia się okno z komunikatem o treści "The Given Value is not numeric" .
Read More: VBA If - Then - Else Statement w Excelu (4 przykłady)
3. tworzenie przeciwnego wyniku za pomocą funkcji IsNumeric
Tutaj stworzymy VBA kod, który da nam odwrotny wynik niż Funkcja ISNUMERIC co oznacza, że dla wartości liczbowych otrzymamy FALSE , a dla wartości nienumerycznych zwróci TRUE .
Kroki :
➤ Follow Krok-01 sekcji 1 .
➤ Zapisz następujący kod
Sub checkvalue3() Dim x As Variant x = InputBox("Podaj dowolną wartość") If IsNumeric(x) = True Then MsgBox ("FALSE") Else MsgBox ("TRUE") End If End Sub
Tutaj zadeklarowaliśmy x jako Wariant i zapisze wartość wejściową. Gdy ISNUMERIC zwróci TRUE , JEŚLI zwróci komunikat o treści "FALSE" i jeśli ISNUMERIC zwraca FALSE to JEŚLI zwraca komunikat wyjaśniający "TRUE" .
➤ Prasa F5 .
Następnie otrzymasz następujące pole wejściowe i jeśli wpiszesz wartość 25 i nacisnąć OK ,
pojawi się okno z komunikatem o treści "FALSE" .
Do zapisania ciągu znaków Alaska i naciskając OK w polu wprowadzania danych,
Pojawia się okno z komunikatem o treści "TRUE" .
Related Content: Funkcja VBA Format w Excelu (8 zastosowań z przykładami)
4. sprawdzenie czy spacje są numeryczne czy nie
Można to łatwo sprawdzić za pomocą VBA kod, czy spacje są numeryczne czy nie.
Kroki :
➤ Follow Krok-01 sekcji 1 .
➤ Zapisz następujący kod
Sub checkvalue4() Dim x As Variant x = " " MsgBox IsNumeric(x) End Sub
Tutaj zadeklarowaliśmy x jako Wariant i będzie przechowywał Pusty . ISNUMERIC zwróci TRUE jeśli Pusty jest numeryczny w przeciwnym razie zwróci FALSE .
➤ Prasa F5 .
Następnie pojawi się okno z komunikatem o treści "False" co oznacza puste miejsca nie są numeryczne .
Read More: Excel Formuła do generowania liczb losowych (5 przykładów)
5. sprawdzanie, czy daty są numeryczne czy nie
W tej części użyjemy losowej daty i sprawdzimy, czy data jest numeryczna, czy nie.
Kroki :
➤ Follow Krok-01 sekcji 1 .
➤ Zapisz następujący kod
Sub checkvalue5() Dim x As Variant x = "02/02/2022 " MsgBox IsNumeric(x) End Sub
Tutaj zadeklarowaliśmy x jako Wariant i zapisze datę. Wtedy ISNUMERIC zwróci TRUE jeśli data jest numeryczna, w przeciwnym razie zwróci FALSE .
➤ Prasa F5 .
Następnie pojawi się okno z komunikatem o treści "False" co oznacza daty nie są numeryczne .
Możemy również spróbować z Funkcja DATESERIAL aby utworzyć daty i sprawdzić, czy jest to numeryczne, czy nie.
➤ Wpisz następujący kod
Sub checkvalue5a() Dim x As Variant x = DateSerial(2022, 2, 2) MsgBox IsNumeric(x) End Sub
Tutaj zadeklarowaliśmy x jako Wariant i będzie przechowywał datę utworzoną przez Funkcja DATESERIAL . ISNUMERIC zwróci TRUE jeśli data jest numeryczna, w przeciwnym razie zwróci FALSE .
➤ Prasa F5 .
W zamian otrzymasz okienko z wiadomością o treści "False" również tym razem.
Read More: VBA Funkcja daty (12 zastosowań makr z przykładami)
Podobne Lektury:
- Jak używać funkcji MsgBox w Excelu VBA (Kompletny przewodnik)
- Użyj funkcji VBA Environ (4 przykłady)
- Jak używać VBA i funkcji w Excelu (4 przykłady)
- Użycie VBA Case Statement (13 przykładów)
- Jak używać funkcji log w Excelu VBA (5 odpowiednich przykładów)
6. sprawdzenie czy czas jest numeryczny czy nie
W tej części sprawdzimy, czy czasy są numeryczne czy nie, używając Funkcja ISNUMERIC .
Kroki :
➤ Follow Krok-01 sekcji 1 .
➤ Zapisz następujący kod
Sub checkvalue6() Dim x As Variant x = "09:30:00 AM" MsgBox IsNumeric(x) End Sub
Tutaj zadeklarowaliśmy x jako Wariant i zapisze czas. Potem ISNUMERIC zwróci TRUE jeśli czas jest numeryczny, w przeciwnym razie zwróci FALSE .
➤ Prasa F5 .
Następnie pojawi się okno z komunikatem o treści "False" co oznacza czasy nie są numeryczne .
Możesz również spróbować z Funkcja TIMESERIAL aby utworzyć daty i sprawdzić, czy jest to numeryczne, czy nie.
➤ Wpisz następujący kod
Sub checkvalue6a() Dim x As Variant x = TimeSerial(9, 30, 0) MsgBox IsNumeric(x) End Sub
Tutaj zadeklarowaliśmy x jako Wariant i będzie przechowywał czas utworzony przez Funkcja TIMESERIAL . ISNUMERIC zwróci TRUE jeśli czas jest numeryczny, w przeciwnym razie zwróci FALSE .
➤ Prasa F5 .
Następnie pojawi się okno z komunikatem o treści "False" również tym razem.
Ponownie możemy wypróbować odwoływanie się do wartości czasu w komórce arkusza.
➤ Wpisz następujący kod
Sub checkvalue6b() Dim x As Variant x = range("B2").value MsgBox IsNumeric(x) End Sub
Tutaj zadeklarowaliśmy x jako Wariant i zapisze czas, który jest w B2 komórka. potem ISNUMERIC zwróci TRUE jeśli czas jest numeryczny, w przeciwnym razie zwróci FALSE .
➤ Prasa F5 .
Na koniec pojawi się okno z komunikatem o treści "True" tym razem.
Read More: Jak używać VBA TimeSerial w Excelu (3 przykłady)
7. użycie VBA IsNumeric dla zakresu wartości
Tutaj sprawdzimy, czy wartości Znaki/ stopnie kolumny są numeryczne lub nie numeryczne i mają wyniki w Sprawdź kolumna.
Kroki :
➤ Follow Krok-01 sekcji 1 .
➤ Zapisz następujący kod
Sub checkvalue7() Dim cell As Range For Each cell In Range("D5:D11") cell.Offset(0, 1) = IsNumeric(cell) Next cell End Sub
Zadeklarowaliśmy komórkę jako Range i użyliśmy a DLA pętla dla komórek zakresu "D5:D11" i dla tych komórek ISNUMERIC zwróci TRUE jeśli wartość jest liczbowa, w przeciwnym razie zwróci FALSE oraz cell.Offset(0, 1) zwróci wartości wyjściowe w jednej kolumnie później do kolumny wejściowej.
➤ Prasa F5 .
Po tym, będziemy mieli TRUE dla wartości numerycznych lub Marks oraz FALSE dla wartości nienumerycznych lub Klasy .
Read More: Jak używać funkcji VBA Val w Excelu (7 przykładów)
8. tworzenie funkcji do testowania zakresu wartości
W tym rozdziale stworzymy funkcję o nazwie VBA ISNUMERIC i sprawdzić, czy wartości Znaki/ stopnie kolumny są numeryczne lub nie numeryczne.
Krok-01 :
➤ Follow Krok-01 sekcji 1 .
➤ Zapisz i zapisz następujący kod
Function IsNumericTest(wartość As Variant) As Boolean If IsNumeric(wartość) Then IsNumericTest = True Else IsNumericTest = False End If End Function
Ten kod utworzy funkcję o nazwie IsNumericTest .
Step-02 :
➤ Wróć do głównego arkusza i wpisz w komórce następującą formułę E5
=IsNumericTest(D5)
D5 to Znaki/ stopnie ucznia i IsNumericTest zwróci TRUE/FALSE w zależności od wartości.
➤ Prasa ENTER i przeciągnij w dół Uchwyt do napełniania narzędzie.
W końcu będziemy mieli TRUE dla wartości numerycznych lub Marks oraz FALSE dla wartości nienumerycznych lub Klasy .
Related Content: Jak używać funkcji VBA DIR w Excelu (7 przykładów)
9. liczenie wartości nie numerycznych za pomocą funkcji VBA IsNumeric
Chcemy zliczyć wartości nienumeryczne lub oceny z Znaki/ stopnie i aby to zrobić, użyjemy tutaj VBA ISNUMERIC i mieć całkowitą liczbę wartości nienumerycznych, które mamy w Hrabia kolumna.
Krok-01 :
➤ Follow Krok-01 sekcji 1 .
➤ Zapisz i zapisz następujący kod
Function countnonnumeric(wartość 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
Ten kod utworzy funkcję o nazwie countnonnumeric .
Gdy wartość komórki nie będzie wartością liczbową, wówczas liczyć zostanie zwiększona o 1 .
Step-02 :
➤ Wróć do głównego arkusza i wpisz następującą formułę
=countnonnumeric(D5:D11)
D5:D11 jest zakresem Znaki/ stopnie uczniów i countnonnumeric zwróci całkowitą liczbę ocen nienumerycznych.
➤ Prasa ENTER
Na koniec otrzymamy wartość 3 co oznacza, że masz 3 Stopnie w Znaki/ stopnie kolumna.
Read More: Jak zwrócić wartość w funkcji VBA (zarówno wartości tablicowe jak i nie tablicowe)
IsNumeric vs ISNUMBER
- ISNUMERIC sprawdza, czy wartość może być przekształcona na liczbę i ISNUMBER sprawdza, czy wartość jest zapisana jako liczba.
- Istnieją pewne różnice pomiędzy Funkcja VBA ISNUMERIC i Excel Funkcja ISNUMBER i próbowaliśmy pokazać różnice poniżej, używając naszego wcześniej stworzonego Funkcja IsNumericTest oraz wbudowany program Excel Funkcja ISNUMBER .
Część ćwiczeniowa
Do samodzielnego wykonywania ćwiczeń udostępniliśmy Praktyka sekcja jak poniżej w arkuszu o nazwie Praktyka . Proszę, zrób to sam.
Wniosek
W tym artykule staraliśmy się omówić niektóre sposoby wykorzystania VBA ISNUMERIC funkcja. mam nadzieję, że uznasz to za przydatne. jeśli masz jakieś sugestie lub pytania, nie krępuj się podzielić nimi w sekcji komentarzy.