VB6Parse / Library / String / chr_dollar

VB6 Library Reference

Chr$ Function

Returns a String containing the character associated with the specified character code. The dollar sign suffix ($) explicitly indicates that this function returns a String type.

Syntax

Chr$(charcode)

Parameters

Return Value

Returns a String containing the single character corresponding to the specified character code. For charcode values 0-127, this corresponds to the ASCII character set. For values 128-255, this corresponds to the extended ASCII or ANSI character set based on the system's code page.

Remarks

Common Character Codes

Code Character Constant Description
0 (null) vbNullChar Null character
9 \t vbTab Horizontal tab
10 \n vbLf Line feed
13 \r vbCr Carriage return
32 (space) - Space character
34 " - Double quote
39 ' - Single quote
65 A - Uppercase A
97 a - Lowercase a

Typical Uses

  1. Line breaks - Insert carriage returns and line feeds in strings
  2. Special characters - Add tabs, quotes, and other special characters
  3. Character generation - Build strings from character codes
  4. Alphabet generation - Create sequences of characters programmatically
  5. Tab-separated values - Format data with tab delimiters
  6. Quote escaping - Insert quotes within strings
  7. File formatting - Create properly formatted text files

Basic Examples

' Example 1: Get character from code
Dim ch As String
ch = Chr$(65)  ' Returns "A"
' Example 2: Lowercase letter
Dim lower As String
lower = Chr$(97)  ' Returns "a"
' Example 3: Special character
Dim space As String
space = Chr$(32)  ' Returns " "
' Example 4: Line break
Dim msg As String
msg = "Line 1" & Chr$(13) & Chr$(10) & "Line 2"

Common Patterns

Multi-line Strings

Function CreateMultiLine() As String
    Dim result As String
    result = "First Line" & Chr$(13) & Chr$(10)
    result = result & "Second Line" & Chr$(13) & Chr$(10)
    result = result & "Third Line"
    CreateMultiLine = result
End Function

Tab-Separated Values

Function CreateTSV(col1 As String, col2 As String, col3 As String) As String
    CreateTSV = col1 & Chr$(9) & col2 & Chr$(9) & col3
End Function

Generate Alphabet

Function GenerateAlphabet() As String
    Dim i As Integer
    Dim result As String
    For i = 65 To 90
        result = result & Chr$(i)
    Next i
    GenerateAlphabet = result  ' Returns "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
End Function

Quote in String

Function AddQuotes(text As String) As String
    AddQuotes = Chr$(34) & text & Chr$(34)
End Function

CSV Field with Quotes

Function QuoteCSVField(field As String) As String
    ' Replace " with ""
    Dim quoted As String
    quoted = Replace(field, Chr$(34), Chr$(34) & Chr$(34))
    QuoteCSVField = Chr$(34) & quoted & Chr$(34)
End Function

Null-Terminated String

Function CreateNullTerminated(text As String) As String
    CreateNullTerminated = text & Chr$(0)
End Function

Password Mask

Function MaskPassword(length As Integer) As String
    Dim i As Integer
    Dim result As String
    For i = 1 To length
        result = result & Chr$(42)  ' Asterisk
    Next i
    MaskPassword = result
End Function

Character Range Check

Function IsUpperCase(ch As String) As Boolean
    If Len(ch) <> 1 Then Exit Function
    Dim code As Integer
    code = Asc(ch)
    IsUpperCase = (code >= 65 And code <= 90)
End Function

Build Character Set

Function GetDigitCharacters() As String
    Dim i As Integer
    Dim result As String
    For i = 48 To 57  ' ASCII codes for 0-9
        result = result & Chr$(i)
    Next i
    GetDigitCharacters = result  ' Returns "0123456789"
End Function

Format Output with Alignment

Function AlignRight(text As String, width As Integer) As String
    Dim padding As Integer
    Dim result As String
    padding = width - Len(text)
    If padding > 0 Then
        Dim i As Integer
        For i = 1 To padding
            result = result & Chr$(32)  ' Space
        Next i
    End If
    AlignRight = result & text
End Function

Advanced Examples

Format Report Header

Function CreateReportHeader() As String
    Dim header As String
    header = "Name" & Chr$(9) & "Age" & Chr$(9) & "City" & Chr$(13) & Chr$(10)
    header = header & String$(40, Chr$(45))  ' Underline with dashes
    CreateReportHeader = header
End Function

Parse Character Codes

Function DecodeCharCodes(codes() As Integer) As String
    Dim i As Integer
    Dim result As String
    For i = LBound(codes) To UBound(codes)
        result = result & Chr$(codes(i))
    Next i
    DecodeCharCodes = result
End Function

Create Box Drawing

Function CreateBox(width As Integer, height As Integer) As String
    Dim result As String
    Dim i As Integer
    ' Top line
    result = String$(width, Chr$(45)) & Chr$(13) & Chr$(10)
    ' Middle lines
    For i = 1 To height - 2
        result = result & Chr$(124) & Space$(width - 2) & Chr$(124) & Chr$(13) & Chr$(10)
    Next i
    ' Bottom line
    result = result & String$(width, Chr$(45))
    CreateBox = result
End Function

Differences from Chr

Feature Chr$ Chr
Return Type Always String Can return Variant
Performance Slightly faster Slightly slower
Type Safety Compile-time type checking Runtime type checking
Assignment Can only assign to String Can assign to Variant or String

Error Handling

Function SafeChr(code As Long) As String
    On Error Resume Next
    SafeChr = Chr$(code)
    If Err.Number <> 0 Then
        SafeChr = ""
        Err.Clear
    End If
End Function

Performance Considerations

Limitations

← Back to String | View all functions