很抱歉没有提供更详细的标题,但这是因为这个特殊情况。我的谷歌搜索没有给我任何类似的主题。
以下简单代码应该在A列中给出0.1到10之间的一系列数字,步骤0.1(我希望至少是这样):
Cells(1, 1) = 0.1
For i = 2 To 100
Cells(i, 1) = Cells(i - 1, 1) + 0.1
Next i
直到5.9它运作良好,但之后结果不如预期:
而不是6我得到5,99999999999999
而不是6.1我得到6,09999999999999
而不是6.2我得到6,29999999999999
...
有人可以解释代码有什么问题或为什么我得到这个结果?
谢谢!
答案 0 :(得分:1)
或者只是这个?
Sub Sample()
Dim i As Long
For i = 1 To 100
'~~> Change Sheet1 to respective sheet
ThisWorkbook.Sheets("Sheet1").Cells(i, 1) = i * 0.1
Next i
End Sub
或者像这样
Sub Sample()
'~~> Change Sheet1 to respective sheet
With ThisWorkbook.Sheets("Sheet1").Range("A1:A100")
.Formula = "=Row()*.1"
.Value = .Value
End With
End Sub