我的范围包含不同小数位数的数字。
我需要编写一个格式化整个范围的代码,使小数位数等于范围内值的最大小数位数。
示例:
2.45
3.38574
6.1
应该成为:
2.45000
3.38574
6.10000
我该怎么做?
答案 0 :(得分:1)
我建议采用这种高级方法:
.
。#.0000
之类的4位小数),并使用NumberFormat
属性将其应用于您的范围。试试吧。如果您遇到某个特定步骤,请询问一个新问题,详细说明您为该特定步骤尝试了什么,以及它究竟没有给出预期结果。
答案 1 :(得分:0)
试试这个:
Sub decPlac()
places = 0
For Each sell1 In Sheets("sheet1").Range("A1:A10")
dots = Len(CStr(sell1)) - InStr(1, CStr(sell1), ".")
If dots > places Then
places = dots
End If
Next
For Each sell2 In Sheets("sheet1").Range("A1:A10")
sell2.NumberFormat = ("0." & WorksheetFunction.Rept("0", places))
Next
End Sub
只需将(" A1:A10")更改为两个循环中的范围