Formatting Strings

This function allows the user to left, right, or center text within a specified length.

EG.

format "Hello" right justified within a length of 10 characters.

” Hello”


option Explicit

Const LJ = 0
Const RJ = 1
Const CJ = 2

Function FormatLen(StringtoFormat as Variant, _
                   LengthtoFormat as Variant, _
                   optional Justify as Variant) as string

    Dim Temp as string

    If IsNumeric(LengthtoFormat) = true And IsNumeric(Justify) = _
                                   true then
        If len(StringtoFormat) >= LengthtoFormat then
            FormatLen = Left$(StringtoFormat, LengthtoFormat)
        else
            If IsMissing(Justify) Or Justify = LJ then
                Temp = StringtoFormat & Space(LengthtoFormat - _
                       len(StringtoFormat))
                FormatLen = Temp
            ElseIf Justify = RJ then
                Temp = Space(LengthtoFormat - len(StringtoFormat)) & _
                       StringtoFormat
                FormatLen = Temp
            ElseIf Justify = CJ then
                 Temp = Space((LengthtoFormat  2) - (len(StringtoFormat) _
                         2))
                 Temp = Temp & StringtoFormat
                 Temp = Temp & Space(LengthtoFormat - len(Temp))
                 FormatLen = Temp
            else
                MsgBox "Could not format string!", vbOKOnly
            End If
        End If
    else
        MsgBox "Could not format string!", vbOKOnly
    End If

End Function

Download Format.bas (2k)

More by Author

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Must Read