利用货币化格式

时间:2017-11-22 14:18:40

标签: excel vba format

我的VBA货币化格式存在问题。 我有这个代码(这是很长的代码的一小部分):

For i = 2 To (k + 1)
ThisWorkbook.Worksheets(1).Cells(i, 5) = Format(ThisWorkbook.Worksheets(1).Cells(i, 5), " #,##0 €")
For j = 7 To 11
ThisWorkbook.Worksheets(1).Cells(i, j) = Format(ThisWorkbook.Worksheets(1).Cells(i, j), " #,###0 €")
Next
Next
ThisWorkbook.Worksheets(1).Cells(k + 1, 12) = Format(ThisWorkbook.Worksheets(1).Cells(k + 1, 12), " 0#,##0 €")
ThisWorkbook.Worksheets(1).Columns("A:M").AutoFit 

每次我的值小于1000时,代码只显示值而没有€符号,但是当它大于1000时,我没有问题。我不明白为什么。我试图改变我的格式(例如#,## 0.0,但我没有显示我想要的格式..)

有什么建议吗? 谢谢:))

1 个答案:

答案 0 :(得分:0)

假设您来自法国,正如您的个人资料中所述,这可能是您的最佳解决方案:

ThisWorkbook.Worksheets(1).Cells(i, 5).Style = "Currency"

它将使用自动货币格式,这正是您所需要的 - 在千位分隔符和EUR符号后面的2个数字。