Access CVar関数はデータ型をバリアント型に変換します。
バリアント型は数値でも文字でも配列でも、何でも入れられる型です。
従いまして、今回のサンプルソフトでは一切変換エラーは発生しません。
Home Access関数
■ 構文
CVar(expression)
expression :(必須) 変換する文字列か数式を指定します。
■ 戻り値
数値の場合は倍精度浮動小数点数型と同じ範囲に変換され、数値以外の場合は、文字列型と同じ範囲に変換されます。
■ Access実行画面
Cvarを使いバリアント型
に変換するフォーム
文字列型を
バリアント型に変換した結果
Integer型を
バリアント型に変換した結果
Long型を
バリアント型に変換した結果
Double型を
バリアント型に変換した結果
■ Access VBA 実行コード
Option Compare Database
'Double型をCVar型でVariant型に変換
Private Sub コマンド3_Click()
Dim bt1 As Variant
Dim fn1 As Double
If IsNull(Me!テキスト1) Then
MsgBox "変換するデータを入力してください。"
Me!テキスト1.SetFocus
Exit Sub
End If
On Error GoTo ErrExit
fn1 = Me!テキスト1
bt1 = CVar(fn1)
MsgBox "変換結果: " & bt1
Exit Sub
ErrExit:
MsgBox "変換時エラーが発生しました。 " & vbCrLf & Err.Description
End Sub
'文字型をCVar型でVariant型に変換
Private Sub コマンド6_Click()
Dim bt1 As Variant
Dim s1 As String
If IsNull(Me!テキスト0) Then
MsgBox "変換するデータを入力してください。"
Me!テキスト0.SetFocus
Exit Sub
End If
On Error GoTo ErrExit
s1 = Me!テキスト0
bt1 = CVar(s1)
MsgBox "変換結果: " & bt1
Exit Sub
ErrExit:
MsgBox "変換時エラーが発生しました。 " & vbCrLf & Err.Description
End Sub
'Integer型をCVar型でVariant型に変換
Private Sub コマンド7_Click()
Dim bt1 As Variant
Dim n1 As Integer
If IsNull(Me!テキスト2) Then
MsgBox "変換するデータを入力してください。"
Me!テキスト2.SetFocus
Exit Sub
End If
On Error GoTo ErrExit
n1 = Me!テキスト2
bt1 = CVar(n1)
MsgBox "変換結果: " & bt1
Exit Sub
ErrExit:
MsgBox "変換時エラーが発生しました。 " & vbCrLf & Err.Description
End Sub
'Long型をCVar型でVariant型に変換
Private Sub コマンド8_Click()
Dim bt1 As Variant
Dim ln1 As Long
If IsNull(Me!テキスト4) Then
MsgBox "変換するデータを入力してください。"
Me!テキスト4.SetFocus
Exit Sub
End If
On Error GoTo ErrExit
ln1 = Me!テキスト4
bt1 = CVar(ln1)
MsgBox "変換結果: " & bt1
Exit Sub
ErrExit:
MsgBox "変換時エラーが発生しました。 " & vbCrLf & Err.Description
End Sub