请考虑以下代码:
Sub CombineNumbersToASTring()
' force Excel to show two decimals, even when there are trailing zeros
Range("A1", "B1").NumberFormat = "0.00"
' give some values to the previously mentioned cells
Cells(1, 1).Value = 0.1
Cells(1, 2).Value = 0.2
' combine the previous two values into one cell
Cells(1, 3).Value = "(" & Cells(1, 1).Value & ", " & Cells(1, 2).Value & ")"
End Sub
结果是错误的
0.10 0.20(0.1,0.2)
虽然它应该是
0.10 0.20(0.10,0.20)
那么,在Excel VBA中转换为字符串时,如何保留NumberFormat? CStr方法似乎不起作用 .
(编辑:我还要补充一点,在我的较大代码中,小数位数正在从一个单元格改变到另一个小数位,因此在编写VBA代码时,无法事先知道小数位数 . )