繁体   English   中英

如何在运行时访问长字符串值

[英]How to access long string value at runtime

我在 Excel 2013 中调试宏时发现 VBA Locals Window 有问题。我使用Locals Window来跟踪字符串的值。

如果字符串超过一定长度(大约 100 个字符),则无法将其从Locals Window复制到其他地方(例如,在记事本++中)进行检查。

有没有办法在运行时访问字符串变量的全部内容?

一种选择是将字符串复制到剪贴板(从代码本身复制,或者在代码暂停时从即时窗口复制到剪贴板)。

再说一次,这在VBA中并不是那么容易,但是您可以按照以下两种方法进行操作
在这里
来自msdn帖子的 API调用和现成函数的解决方案(在该答案中也提到)有些冗长,但是再次需要将其复制一次到模块中,然后立即可以正常工作。 我刚刚用10万个字符进行了测试-没问题。

您还可以将 output 转储到 txt 文件。 在下面的示例中,“响应”是 output 的变量。

Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Dim oFile As Object
Set oFile = fso.CreateTextFile("C:\Development\DebugOutput.txt")
oFile.WriteLine response
oFile.Close
Set fso = Nothing
Set oFile = Nothing

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM