更改格式(需要在我的数据中使用逗号)Excel 2013 VBA

时间:2017-08-21 19:17:39

标签: excel vba excel-vba

我直接在用户表单中计算数据,然后将数据传输到表中。在我的用户表单中,数字很好,但不在表格中。我希望我的数据(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

3 个答案:

答案 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")