当两个日期之间的差异大于n时,我正在尝试做出决定。当我使用变量(counter
)来引用行索引时,会出现问题,它会返回类型不匹配,并且不会从Date
中减去。如果我用一个数字替换变量counter
它运行正常。
为什么我会收到不匹配错误?
为什么当我用变量调用单元格值时,它会以不同的方式查看单元格值,即使变量等于数字?
感谢您的帮助。
Sub LoopTest()
Dim counter As Integer
For counter = 1 To 5
If Date - Cells(counter, 2) > 30 Then
Range("H" & counter).Value = "working"
End If
Next
End Sub
答案 0 :(得分:0)
尝试下面的代码(我用日期,数字,文本进行了测试,并且它有效)
Option Explicit
Sub LoopTest()
Dim counter As Long
For counter = 1 To 5
If IsDate(Range("B" & counter).Value) Then
If DateDiff("d", Date, Range("B" & counter).Value) > 30 Then
Range("H" & counter).Value = "working"
End If
End If
Next
End Sub