我正在尝试让 Leadertext 下的文本显示在单独的行上。如何在 VBA 中显示新行?所以它出来了
CB (实用(
E INV (Util(
'Leader Text
StartPoint(0) = points(6): StartPoint(1) = points(7): StartPoint(2) = points(8)
LeaderTextWidth = 1
LeaderText = ("CB " & Util & " E INV " & Util)
Set LeaderAnnotation = ACAD.ActiveDocument.ModelSpace.AddMText(StartPoint, LeaderTextWidth, LeaderText)
几种方式。VBA.Constants
标准库模块是您的朋友。MSDN 描述了所有这些。
vbNewLine 表示运行代码的平台上的新行:
LeaderText = ("CB " & Util & vbNewLine & " E INV " & Util)
这通常是您理想的解决方案。但是,有时您的代码可能会从Windows和Mac机器向具有Unix样式新行的系统发送字符串,因此您需要更加小心或具体。这就是存在其他常量的原因。
vbCrLf 使用 ASCII 字符 10 和 13 制作了一个 Windows 新行:
LeaderText = ("CB " & Util & vbCrLf & " E INV " & Util)
vbLf 是 ASCII 10,换行:vbLf
相当于 Chr(10)
。
vbCr 是 ASCII 13,回车符:vbCr
等效于 Chr(13)
。
因此,这也会产生完全相同的输出(假设Windows(:
LeaderText = ("CB " & Util & vbCr & vbLf & " E INV " & Util)
或
LeaderText = ("CB " & Util & Chr(10) & Chr(13) & " E INV " & Util)