VBAでCStr関数を使用して、指定した値を文字列に変換する方法をご説明します。
日付や数値、算出した結果など、文字列として扱いたい場合に使用します。
ですが、予めString型(文字列型)の変数に代入する場合、同じ結果を得られますので必ずCstr関数を使用する必要性はありません。
その他の変換する関数については、次の記事をご覧ください。
- Val関数で文字列を数値に変換する方法
- CDbl関数で文字列をDouble型の数値に変換する
- CSng関数で文字列をSingle型の数値に変換する
- CLng関数で文字列をLong型の数値に変換する
- CInt関数で文字列をInteger型の数値に変換する
- 文字列の大文字と小文字、全角と半角を変換する方法
1.CStr関数の使い方
CStr関数は指定した値をString型の文字列に変換します。
構文は次のように記述します。
CStr(値)
値には任意の 数値や日付、数式などを指定します。
日付を渡されたときは「短い形式」の文字列を返します。
Boolean型を渡されたときは”True”か”False”を返します。
Nullを渡されたときはエラーが発生します。
2.サンプルコード
Cstr関数を使用したサンプルと、文字列型の変数にそのまま代入したサンプルです。
結果はどちらも同じになります。
Cstr関数のサンプル
Sub Sample1()
Debug.Print CStr(10.5)
Debug.Print CStr(10 / 3)
Debug.Print CStr(#1/1/2019#)
Debug.Print CStr(True)
End Sub
直接String型に代入サンプル
Sub Sample2()
Dim mystr As String
mystr = 10.5
Debug.Print mystr
mystr = 10 / 3
Debug.Print mystr
mystr = #1/1/2019#
Debug.Print mystr
mystr = True
Debug.Print mystr
End Sub