在Excel使用在COUNTIF函数的相对参考(偏移)VBA
我使用在Excel VBA一个COUNTIF函数的相对参考(偏移)具有问题:在Excel使用在COUNTIF函数的相对参考(偏移)VBA
buildRef.Offset(i, 2) = WorksheetFunction.CountIfs _
(range, ">=" & buildRef.Offset(i, 1))
这总是导致0,但我知道这不是正确的答案。但是,
WorksheetFunction.CountIfs (range, buildRef.Offset(i, 1))
确实给出了正确的答案。
谁能告诉我为什么COUNTIFS功能不起作用,当标准是“大于”一些相对参考?
代码没有问题。由于您的i
,您得到0
。 .Offset(i, 1)
可能不是指您认为它指的单元格。我会建议单步执行代码来检查i
的值。
下面是一个例子来说明它的工作原理。我已经硬编码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
我检查了偏移量(i,1)的值。他们是正确的。 –
我刚给你看看它的工作原理。我可以看看你的excel文件吗?如果是,请将其上传到免费的文件共享网站并在此分享链接。此外,如果文件和机密日期,然后将其替换为虚拟数据 –
对不起,但我不能allower共享工作文件。 –
尝试更换'buildRef.Offset(I,1)''与buildRef.Offset(I,1))。value' –
什么buildRef'和'地址范围'范围'? – Slai
添加.value仍然没有给我正确的答案。 –