在Excel VBA中使用COUNTIF函数中的相对引用(偏移量)
我在使用Excel VBA中的COUNTIF函数中的相对引用(偏移量)时遇到问题:
buildRef.Offset(i, 2) = WorksheetFunction.CountIfs _ (range, ">=" & buildRef.Offset(i, 1))
这总是结果为0,但我知道这不是正确的答案。 然而,
WorksheetFunction.CountIfs (range, buildRef.Offset(i, 1))
确实给出了正确的答案。
任何人都可以告诉我为什么COUNTIFS函数不符合标准是“大于”一些相对的参考?
代码没有问题。 你因为你而得到0
。 .Offset(i, 1)
可能不是指您所指的单元格。 我会build议通过代码来检查i
的价值。
这里是一个例子来显示它的工作原理。 我已经硬编码我的价值来演示它如何工作。
Sub Sample() Dim rng As Range, buildRef As Range Set rng = [A1:A10] Set buildRef = [D1] buildRef.Offset(1, 2) = WorksheetFunction.CountIfs(rng, ">=" & buildRef.Offset(1, 1)) End Sub