つらつら Excel VBA

私の備忘録です。

固定長文字列変数の宣言

String宣言の後にアスタリスク(*)と定数を指定することで、文字数固定の変数を宣言することができる!

Sub 固定長文字列()
    
    Dim s As String * 10
    s = "テスト文字列"
    
    Debug.Print Len(s)
    Debug.Print "s=[" & s & "]"
    Debug.Print Asc(Right(s, 1))
    
End Sub

イミディエイトウィンドウ

 10 
s=[テスト文字列    ]
 32 

Shift-JISの文字コード32は半角スペース。文字数が足りないと半角スペースで埋められる。
sの長さを5にすると「テスト文字」が返る。特にエラーは出ない。
文字列の長さは整数か定数(Const)で指定できる。

以上。