【发布时间】:2017-12-12 18:43:16
【问题描述】:
我正在尝试将范围格式化为自定义格式。我需要相关单元格中的数字如下所示:2 000 kg/h.
在 excel 中,我可以转到自定义格式并输入 ###0" kg/h",它工作正常。在 VBA 中,数字格式必须写在引号之间,所以我们不能在里面加上引号。另外,“kg/h”部分需要是字符串变量。
如何使用 VBA 来实现?
【问题讨论】:
我正在尝试将范围格式化为自定义格式。我需要相关单元格中的数字如下所示:2 000 kg/h.
在 excel 中,我可以转到自定义格式并输入 ###0" kg/h",它工作正常。在 VBA 中,数字格式必须写在引号之间,所以我们不能在里面加上引号。另外,“kg/h”部分需要是字符串变量。
如何使用 VBA 来实现?
【问题讨论】:
要在字符串中包含引号,请使用两个引号。
Debug.Print "This "" is a quote"
This " is a quote
或者你可以使用 Chr() 函数。 Chr(34) 返回双引号。
Dim units As String
units = "kg/h"
ActiveCell.NumberFormat = "# ##0" & Space(1) & Chr$(34) & units & Chr$(34)
这可能比阅读更容易一些
ActiveCell.NumberFormat = "# ##0" & Space(1) & """" & units & """"
【讨论】: