VBA字符串255个字符限制

时间:2017-03-27 07:57:30

标签: string vba

我遇到了使用VBA的问题,并注意到它有一个字符串限制为255个字符。我实际上是尝试通过POST发送JSON并暂停执行我注意到该字符串总是只有255个字符。

有没有办法调整字符串的大小?

2 个答案:

答案 0 :(得分:6)

我浪费了大约6个小时来解决这个问题,最后检查它只是一个 DEBUGGER LIMITATION 。 VBA调试器只显示字符串的255个字符,但并不意味着它包含他正在显示的内容。

当事情变得疯狂时我注意到了这一点,当我使用MsgBoxLen来检查字符串大小和内容时,它就浮出水面。

希望它有所帮助,因为我看到很多人要求这样做,但没有人告诉它。

答案 1 :(得分:1)

如果你想在控制台上打印一些东西(即时窗口)你可以简单地将它打印到记事本,结果理论上是相同的并且高于255行(不是字符)。以下是如何在记事本中打印1到10.000的数字:

Option Explicit

Public Sub PrintToNotepad()

    Dim strShell                As String
    Dim strFileName             As String
    Dim fs                      As Object
    Dim objText                 As Object

    strFileName = ThisWorkbook.Path & "\test" & Replace(Now, ":", "")
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set objText = fs.CreateTextFile(strFileName, True)

    objText.writeline (GenerateBigString)

    strShell = "C:\WINDOWS\notepad.exe" & " "
    strShell = strShell & strFileName
    Call Shell(strShell)

End Sub

Public Function GenerateBigString() As String

    Dim i           As Long
    Dim result      As String

    For i = 1 To 10000
        result = result & i & vbCrLf
    Next i

    GenerateBigString = result

End Function