在IF声明中计算

时间:2016-09-03 23:22:23

标签: excel-vba vba excel

我在循环中编写了以下IF语句,如果语句为真,则计数器增加1。

问题在于,即使声明不正确,计数器也会增加一个。

For i = 2 To lRow
If (ptfile.Worksheets(1).Cells(i + 1, 17).Value - ptfile.Worksheets(1).Cells(i, 17).Value) < 1440 Or (ptfile.Worksheets(1).Cells(i + 1, 17).Value - ptfile.Worksheets(1).Cells(i, 17).Value) > 1440 Then
cnt = cnt + 1
casenames2.Worksheets(1).Cells(cnt, 2).Value = ptnames
casenames2.Worksheets(1).Cells(cnt, 3).Value = i
End If

Next i

错误是运行时错误6,溢出。 请帮忙,

1 个答案:

答案 0 :(得分:2)

简化您的IF声明

If (something) < 1440 Or (something) > 1440 Then
    cnt = cnt + 1

因此,条件为FALSE且计数器未增加的唯一情况是(某事)恰好等于1440。