在VBA宏之后,千分离消失了

时间:2015-02-26 23:51:31

标签: excel vba

我正在使用一个VBA宏来读取A1的值并将文本添加到已经有数字的C1。问题是文本被添加到C1的时刻,逗号从图中消失, 1,234.56 变为123456.有没有办法解决这个问题?

Sub WhatA1()
    If Range("A1").Value = "Daily Wages" Then
    [C1].Value = "Total: " & [C1].Value
    Else: [C1].Value = "Orders: " & [C1].Value
  End If
  End Sub

2 个答案:

答案 0 :(得分:0)

试试这个

Sub WhatA1()
If Range("A1").Value = "Daily Wages" Then
    [C1].Formula = "Total: " & format([C1].Value,"#,###.##")
Else
    [C1].Formula = "Orders: " & format([C1].Value,"#,###.##")
End If
End Sub

答案 1 :(得分:0)

可以为将来的计算留下基础价值的替代方案是自定义数字格式。

Sub WhatA1()
    If Range("A1").Value = "Daily Wages" Then
        [C1].NumberFormat = "Tot\al\: #,##0.00"
    Else
        [C1].NumberFormat = "O\r\d\e\r\s\: #,##0.00"
    End If
End Sub

这提供了您正在寻找的细胞标记,同时保留了细胞的数值。与其他数字格式一样,单元格必须足够宽,以显示整个格式化结果,它将显示######。