VB中一个汉字算2位,但在用len()等语句时是按一个汉字一位返回的,用以下程序可以返回真实的位数:
Public Function BitLen(SourceString As String)
    Dim i As Long, l As Long
    For i = 1 To Len(SourceString)
        If Asc(Mid(SourceString, i, 1)) < 0 Then l = l + 2 Else l = l + 1
    Next i
    BitLen = l
End Function