valは使わないな
文字列にする時はこんな自作ライブラリつかってる

Function dfVntToStr(ByVal StringVal As Variant) As String
On Error Resume Next

dfVntToStr = \\\"\\\" \\\'初期化

If Not IsNull(StringVal) Then
dfVntToStr = StringVal & \\\"\\\" \\\'文字列へ変換
End If

On Error GoTo 0 \\\'エラークリア
End Function

同じようにintに変換とかlongに変換とかのライブラリも作ってる


ネタ元はこれ
VisualBasic6エラーコーディング
ttp://www.amazon.co.jp/dp/4894712237/