我希望Excel VBA根据用户控件写一个数字或一个百分比。
在Excel中,我可以按Ctrl 1来应用自定义格式,例如“文本:” 0.0%或“文本:” 0.0。
我设法写了文本,然后根据控件值使用Format()或Round()。但是,格式有两个小数位,我想一个小数位。
这是一些说明性代码。如上所述,我想控制百分比的小数位数(例如0、1、2)。
Select Case sControl
Case "Percentage"
oRange = "Text: " & Format(dvalue + 0.000001, "Percent")
Case "Numeric"
oRange = "Text: " & Round(dvalue + 0.000001, 1)
End Select
关于如何执行此操作的任何指示都将很棒。在这两种情况下,我都将dvalue添加0.000001,因为我知道这有助于保持传统的舍入精度。
干杯
提姆
最佳答案
我认为这是您要寻找的:
FormatPercent(1 + 0.000001, 1)
它的格式为百分比,第二个参数(在本例中为1)是所需的小数位数。
This is where I found it.
This is a very good resource for the Format function too.
关于string - 如何在Excel VBA中应用自定义格式,例如“文本:” 0.0%,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16302795/