概要
Str
関数は、Excel VBAで数値を文字列に変換するための関数です。数値を文字列として処理したり、表示形式を統一する場合に役立ちます。例えば、数値を他の文字列と結合する場合や、数値をテキストボックスに表示する際に使用されます。
構文
Str(数値)
パラメータ
- 数値
文字列に変換したい数値を指定します。整数、小数、正の数、負の数に対応しています。
戻り値
指定された数値を文字列として返します。正の数には先頭にスペースが含まれ、負の数にはマイナス記号が付与されます。
説明
Str
関数は、数値を文字列に変換するためのシンプルで便利な方法です。変換された文字列は、その後の文字列操作や表示処理に使用できます。正の数は先頭にスペースが付き、負の数はそのままの符号で返されます。変換結果をテキストとして利用することで、計算以外の処理に数値を適用することが可能になります。
-
正の数の変換
Str
関数は、正の数を変換する際に先頭にスペースを追加します。これは数値が負でないことを示すためのもので、他の文字列との結合の際に影響を与える場合があります。 -
小数の変換
小数もそのまま文字列として変換され、整数部と小数部がそのまま文字列で表現されます。
使用例
基本的な使用例 - 数値を文字列に変換
Sub SampleStr()
Dim result As String
result = Str(123)
MsgBox "数値123を文字列に変換: '" & result & "'" ' 結果: ' 123'
End Sub
負の数を文字列に変換
Sub StrNegative()
Dim result As String
result = Str(-45.67)
MsgBox "数値-45.67を文字列に変換: '" & result & "'" ' 結果: '-45.67'
End Sub
小数を文字列に変換
Sub StrDecimal()
Dim result As String
result = Str(3.14159)
MsgBox "数値3.14159を文字列に変換: '" & result & "'" ' 結果: ' 3.14159'
End Sub
数値を文字列として結合する
Sub ConcatenateStr()
Dim num As Integer
Dim text As String
num = 100
text = "合計は" & Str(num) & "円です。"
MsgBox text ' 結果: '合計は 100円です。'(先頭のスペースに注意)
End Sub
備考
-
先頭スペースの処理
Str
関数は正の数を変換する際に先頭にスペースを付けます。このスペースが不要な場合は、[Trim]関数を使用してスペースを取り除くことができます。 -
他の変換関数との比較
Str
関数は、数値を単純に文字列に変換しますが、書式指定が必要な場合はFormat
関数やCStr
関数の使用も検討できます。 -
エラーハンドリング
Str
関数は、文字列や非数値を引数に指定するとエラーが発生します。事前にデータ型のチェックを行うことが推奨されます。