IsNumeric関数:値が数値を表しているかどうかを確認する

IsNumeric 関数は Excel VBA で用意されている関数の一つで、引数に指定した値が数値を表しているかどうかを確認します。ここでは Excel VBA における IsNumeric 関数の使い方について解説します。

(Last modified: )

IsNumeric関数の定義と使い方

IsNumeric 関数は引数に指定した値が数値を表す値かどうかを確認し、「True」または「False」の値を返します。

IsNumeric(expression)

引数に値を指定します。値が数値を表している場合は「True」、そうでなかった場合は「False」が戻り値として返されます。

次の例を見てください。

Debug.Print IsNumeric("27")          'True
Debug.Print IsNumeric("3.14")        'True
Debug.Print IsNumeric("2021/02/10")  'False
Debug.Print IsNumeric("10Yen")       'False
Debug.Print IsNumeric(TRUE)          'True

"27" や "3.14" は数値として識別できますが、 "2021/02/10" や "10YEN" は数値としては識別できず「False」となります。また TRUE や FALSE はそれぞれ 1 や 0 に変換可能なため「True」となります。

サンプルコード

それでは簡単なサンプルを作成して試してみます。

Option Explicit

Sub IsNumeric関数()
    Debug.Print IsNumeric(58)
    Debug.Print IsNumeric("27")
    Debug.Print IsNumeric("3.14")
    Debug.Print IsNumeric("1.2E7")
    Debug.Print IsNumeric("&H3F")
    Debug.Print IsNumeric(True)
    Debug.Print IsNumeric("2021/02/10")
    Debug.Print IsNumeric("10YEN")
    Debug.Print IsNumeric("")
End Sub

IsNumeric関数の定義と使い方(1)

このプログラムを実行すると IsNumeric 関数を使って値が数値を表している値かどうかを確認し、数値を表している場合は「True」、そうでない場合は「False」を返します。数値はもちろん文字列であっても数値を表すものは「True」となります。日付や数値に関する文字以外の文字が含まれるものは「False」となります。

IsNumeric関数の定義と使い方(2)

-- --

Excel VBA における IsNumeric 関数の使い方について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。