教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA 関数】IsNumeric関数の使い方を教えて!

構文

構文は以下の通りです。

IsNumeric(変数)

解説

IsNumeric関数は、指定した変数が数値であるかどうかを判定するための関数です。変数が数値であればTrueを、数値でなければFalseを返します。

引数 指定 内容
変数 必須 数式または文字列式を含むバリアント型 (Variant) の式を指定します。

使用例

IsNumeric("123456")
IsNumeric("123,456")
IsNumeric("123.456")

使い方

具体的な使い方を紹介します。

Sub CheckNumericValue()
    Dim value As Variant
    value = Range("A1").Value
    If IsNumeric(value) Then
        MsgBox "入力された値は数値です。"
    Else
        MsgBox "入力された値は数値ではありません。"
    End If
End Sub

この例では、セルA1に入力された値が数値かどうかを判定しています。IsNumeric関数を使用し、条件分岐を行っています。もし入力された値が数値であれば、「入力された値は数値です。」というメッセージボックスが表示されます。数値でない場合は、「入力された値は数値ではありません。」というメッセージボックスが表示されます。

プログラミング例

以下に、プログラミング例を紹介します。

Sub SumNumericValues()
    Dim rng As Range
    Dim cell As Range
    Dim total As Double
    Set rng = Range("A1:A10")
    total = 0
    For Each cell In rng
        If IsNumeric(cell.Value) Then
            total = total + cell.Value
        End If
    Next cell
    MsgBox "合計値: " & total
End Sub

この例では、セル範囲A1からA10までの数値を合計するマクロです。IsNumeric関数を使って各セルの値が数値であるかどうかを判定し、数値の場合にはtotal変数に加算します。最後に合計値をメッセージボックスで表示します。

まとめ

IsNumeric関数は、指定した値が数値であるかどうかを判定するための便利な関数です。この関数を使えば、数値データのバリデーションや数値計算など、さまざまな処理が簡単に行えます。是非活用してください。