指定した文字列を数値に変換する(Val 関数)
Val 関数 の使い方
Val 関数は、指定した文字列に含まれる数字を数値として認識し、その値を適切なデータ型に変換してかえす関数です。
result = Val ( expression )
引数・戻り値
- expression ・・・ 任意の文字列・文字列式を指定します。
- result ・・・ 引数 expression に含まれる数値を適切なデータ型に変換した値。
文字列中の数字以外の文字を見つけると Val 関数は読み込みを中止します。ただし、スペース、タブ、ラインフィード、キャリッジリターン等は無視されます。
例1:Val(“12 345”) ⇒ 12345([スペース]は無視)
例2:Val(“99\123”) ⇒ 99([\]以降は読み込み中止)
8 進数を表す &O や 16 進数を表す &H は、数値として認識します。
例:Val(“&H10”) ⇒ 16, Val(“&O10”) ⇒ 8 )
ピリオド (.) は、小数点の記号として認識します。
例:Val(“123.55”) ⇒ 123.55
引数 expression が、Null 値の場合は、エラーになります。
引数 expression が、Empty 値の場合は、0 を返します。
Val 関数 の使用例
サンプルVBAソース
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
Sub Sample_val() Debug.Print Val(123456) '数値 Debug.Print Val("9\12") '「\」を含む Debug.Print Val("&H10") '16進数 Debug.Print Val("&O10") '8進数 Debug.Print Val("123abc") '全角数値と文字列 Debug.Print Val("123abc") '半角数値と文字列 Debug.Print Val("25.1") '小数点を含む数値 Debug.Print Val(50 & Chr(9) & "11") '水平タブ Debug.Print Val(60 & Chr(10) & 1) 'ラインフィード Debug.Print Val(70 & Chr(11) & 1) '垂直タブ Debug.Print Val(80 & Chr(13) & 1) 'キャリッジリターン Debug.Print Val(90 & Chr(32) & 1) 'スペース End Sub |
実行結果
関連記事
-
-
引数の整数部分を取得する(Fix 関数・Int 関数)
Fix 関数・Int 関数の使い方 【書式】 number_fix = Fix …
-
-
VBA の演算子(論理演算子:And、Eqv、Imp、Not、Or、Xor)
論理演算子 論理演算を行うときに使用する演算子で、以下の 6 種類があります。 …
-
-
取り消し線を設定する(Strikethrough プロパティ)
取り消し線を設定する(Strikethrough プロパティ) Striketh …
-
-
セルのデータを固定長形式で複数のセルに分割する(TextToColumns メソッド・Parse メソッド)
固定長形式でセルを分割 TextToColumns メソッドや Parse メソ …
-
-
データ型を調べてそのデータ型を示す文字列を返す(TypeName 関数)
TypeName 関数 の使い方 TypeName 関数は、引数に、データ型を調 …
-
-
指定した値を16進数で表記した文字列に変換する(Hex 関数)
Hex 関数 の使い方 【書式】 result = Hex ( expressi …
-
-
配列(宣言・要素数の変更について)
配列の宣言 【書式】※ 配列の宣言 <Type 型の静的配列(固定長配列)の宣言 …
-
-
色の設定(ThemeColor プロパティ・TintAndShade プロパティ)
ThemeColor プロパティ・TintAndShade プロパティ テーマカ …
-
-
配列(多次元配列・配列の次元の変更)
多次元配列 【書式】 多次元配列の宣言 <静的配列(固定長配列)> Dim my …
-
-
文字列:文字列の長さを取得( Len 関数、LenB 関数 )
Len 関数(文字列の長さを取得) 【書式】 result_len = Len …