サイトについて      連絡先   検索

VBA Val 関数

はじめに

Excel VBA の Val 関数を紹介します。

Val 関数は、文字列を適切な数値型 (Integer など) に変換して返します。

文字列を数値型に変換したいときに使用します。

構文

Val(文字列)

名前 説明
引数「文字列」数値型に変換したい文字列を指定します。
戻り値変換した数値に対応した数値型 (Integer など)

解説

変換される数値によって Integer や Double など適切な型にして返します。

文字列の先頭に数字が含まれていれば、そこまでの数字を数値型に変換して返します。

数値型に変換できないときは 0 を返します。

とにかく文字列を数値型にしたいときに Val 関数を使用します。

使用例


Dim v As Variant

v = Val("あいう")
Debug.Print(v) ' 0

v = Val("123あいう456")
Debug.Print(v) ' 123

v = Val("あいう456")
Debug.Print(v) ' 0

v = Val("1 2 3")
Debug.Print(v) ' 123

v = Val("1.23")
Debug.Print(v) ' 1.23

v = Val("1,234")
Debug.Print(v) ' 1

v = Val("\123")
Debug.Print(v) ' 0

CInt 関数」などは変換できない値のときにエラーが発生します。


Dim i As Integer

i = CInt("123")
Debug.Print (i) ' 123

Dim s As String
s = "Tips"

i = CInt(s) ' エラー
If IsNumeric(s) = True Then ' 変換できるときだけ実行する
    i = CInt(s)
End If

関連ページ