Vba For循环拒绝通过
我有一个非常简单的for循环,或者我是这么想的,它拒绝通过。每当我运行主代码时,这是一个exsert,代码似乎没有运行,我已经将它缩小到这个For循环Vba For循环拒绝通过,vba,excel,for-loop,Vba,Excel,For Loop,我有一个非常简单的for循环,或者我是这么想的,它拒绝通过。每当我运行主代码时,这是一个exsert,代码似乎没有运行,我已经将它缩小到这个For循环 Sub Test_3() Dim b As Double Dim a As Long Dim xvalues As Double Dim yvales As Double b = 1 For a = 55 To 15 Step -0.25 xvalues = a yvalues = (-0.000005023488366
Sub Test_3()
Dim b As Double
Dim a As Long
Dim xvalues As Double
Dim yvales As Double
b = 1
For a = 55 To 15 Step -0.25
xvalues = a
yvalues = (-0.000005023488366 * ((xvalues) ^ 6)) + (0.000988717992 * ((xvalues) ^ 5)) - (0.07843393602 * ((xvalues) ^ 4)) + (3.20338362 * ((xvalues) ^ 3)) - (70.82720195 * ((xvalues) ^ 2)) + (807.4320705 * xvalues) - 3512.053837
Cells(1 + b, 12) = yvalues
b = b + 1
Next a
End Sub
当我向每一行添加断点时,我发现在a=55到15步骤-0.25之后,代码似乎结束了。我不知道这是为什么。如果我按住F5键,断点标记将在b=1
和之间保持跳跃,以使a=55到15步-0.25
任何帮助都将受到感谢。谢谢您应该将a
声明为浮点值。
例如,将a变暗为双色
目前它是一个Long
,在这种情况下55-0.25
总是55
看看这个例子,当计数器被声明为整数值时,1+0.49
是1
:
您应该将a
声明为浮点值。
例如,将a变暗为双色
目前它是一个Long
,在这种情况下55-0.25
总是55
看看这个例子,当计数器被声明为整数值时,1+0.49
是1
:
是的,谢谢,因为Long
只定义整数?我说的对吗?是的,Long
表示整数,@CptGoodarExcellent,这就是我认为它失败的原因。是的,谢谢你,因为Long
只定义整数?我说的对吗?是的,Long
表示整数,@CptGoodarExcellent,这就是为什么我认为它失败了。
Sub TestMe()
Dim a As Long
For a = 1 To 3 Step 0.49 'change to 0.5 to see difference
Debug.Print a
Stop 'if you remove the Stop, you would go to infinite loop
Next a
End Sub