Używanie Isnumeric i Isnumber w VBA

Ten samouczek nauczy Cię, jak korzystać z Czy numeryczne oraz Czy numer funkcje w VBA, aby sprawdzić, czy wartości są liczbami.

IsNumeric to wbudowana funkcja VBA, natomiast IsNumber to funkcja Excela, którą można wywołać z kodu VBA.

Różnica między IsNumber i IsNumeric w VBA

IsNumber sprawdza, czy wartość jest przechowywana jako liczba. Natomiast IsNumeric sprawdza, czy wartość można przekonwertować na liczbę.

Na przykład, jeśli przekażesz pustą komórkę jako parametr, IsNumber zwróci FALSE, a IsNumeric zwróci TRUE. Ponadto, jeśli przekażesz komórkę zawierającą liczbę przechowywaną jako tekst, IsNumber zwróci FALSE i IsNumeric TRUE.

Musisz zwrócić uwagę na te ograniczenia obu funkcji i zdecydować, w jakich przypadkach lepiej jest użyć IsNumeric, a kiedy IsNumber.

Używanie IsNumeric w VBA

Czy numeryczne to funkcja VBA, która sprawdza, czy wartość jest liczbowa i zwraca w wyniku logiczną wartość PRAWDA lub FAŁSZ.

Funkcja może przyjmować zmienną lub wartość komórki.

Oto przykład pobrania wartości komórki:

12345 If IsNumeric(Sheet1.Range("A1").Value) = True WtedyMsgBox "Wartość w A1 jest liczbowa"W przeciwnym razieMsgBox "Wartość w A1 nie jest liczbowa"Zakończ, jeśli

W tym przykładzie sprawdzamy, czy wartość z komórki A1 jest liczbowa za pomocą IsNumeric. Ta funkcja zwraca odpowiedni komunikat, w zależności od wyniku funkcji.

W następnym przykładzie wykonaj tę samą operację, z wyjątkiem zmiennej zamiast wartości komórki:

123456789 Dim n jako wariantn = Arkusz1.Zakres("A1").WartośćJeśli IsNumeric(n) = Prawda WtedyMsgBox "Wartość w A1 jest liczbowa"W przeciwnym razieMsgBox "Wartość w A1 nie jest liczbowa"Zakończ, jeśli

Używanie IsNumber w VBA

Czy numer to funkcja Excela, której można używać w VBA. Ma prawie podobny wynik jak IsNumeric. Spójrzmy na przykład funkcji IsNumber:

123456789 If Application.WorksheetFunction.IsNumber(Sheet1.Range("A1").Value) = True ThenMsgBox "Wartość w A1 jest liczbowa"W przeciwnym razieMsgBox "Wartość w A1 nie jest liczbowa"Zakończ, jeśli

Jak widać z kodu, różnica polega na składni podczas wywoływania funkcji. Ponieważ IsNumber jest funkcją Excela, musimy umieścić Aplikacja.Arkusz Funkcja przed wywołaniem funkcji.

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave