VB6指定の文字数になるまで先頭を文字で埋める

スポンサーリンク

VB6 では、PadLeft メソッドに該当する関数はありませんので、以下のような関数を自作することになります。

サンプルコード

以下にサンプルコードを示します。

VB6.0 以前
' -------------------------------------------------------------------------------
'       指定の文字数になるまで先頭を文字で埋めます。
'
' @Param    stTarget    処理対象となる文字列。
' @Param    iLength     文字の長さ。
' @Param    [chOne]     埋める文字。(省略時は半角スペース)
' @Return               先頭を指定の文字で iLength の長さまで埋められた文字列。
' -------------------------------------------------------------------------------
Public Function PadLeft(ByVal stTarget As String, ByVal iLength As Integer, Optional ByVal chOne As String = " ") As String
    Do While (Len(stTarget) < iLength)
        stTarget = chOne & stTarget
    Loop

    PadLeft = Right$(stTarget, iLength)
End Function

使用例は以下のようになります。

VB6.0 以前
    ' 処理対象となる文字列変数を宣言する
    Dim stTarget As String
    stTarget = "1234"

    ' 6 文字になるまで先頭を半角スペースで埋める
    Call MsgBox("[" & PadLeft(stTarget, 6) & "]")

    ' 8 文字になるまで先頭を "0" で埋める
    Call MsgBox("[" & PadLeft(stTarget, 8, "0") & "]")

関連するリファレンス

準備中です。

スポンサーリンク