我直接在用户表单中计算数据,然后将数据传输到表中。在我的用户表单中,数字很好,但不在表格中。我希望我的数据(Double)在我的表格中以逗号显示。目前,我的数据在表中没有逗号。例如,我的数据是441 666 666 666 667
而不是4,41666666666667
...我认为我必须更改格式?请问有谁能开导我这个问题吗?谢谢。
代码示例:
Private Sub tbxHours_Change()
Dim rate As String
Dim hours As String
rate = Replace(tbxRate .Value, ".", ",")
hours = Replace(tbxHours .Value, ".", ",")
If StrComp(rate , "") = 0 Then rate = "0"
If StrComp(hours , "") = 0 Then hours = "0"
tbxCostRate.Value = CStr(CDbl(rate) * CDbl(hours))
End sub
答案 0 :(得分:0)
我没有完全关注您的代码,但这是您要应用于您的值的格式。
.NumberFormat = "#,##0"
答案 1 :(得分:0)
您使用逗号作为小数分隔符,对吗?如果是这样,请确保excel中的设置正确。见Microsoft Change Character for Delimiter
可以使用VBA Format()函数完成此操作:
'Comma as the Decimal Delimiter
tbxCostRate.Value = Format(CDbl(rate) * CDbl(hours), "#.##0,00")
'Comma as the Thousands delimiter
tbxCostRate.Value = Format(CDbl(rate) * CDbl(hours), "#,##0.00")
*注意:如果数据为数字,则可能不应将速率转换为字符串
答案 2 :(得分:0)
此外:
tbxCostRate.Value = Format CStr(CDbl(rate) * CDbl(hours)), "Standard")