2003年sumproduct功能的宏

时间:2014-05-19 10:44:23

标签: excel-2003

我一直在尝试创建一个宏来复制Excel 2003中的以下函数:

=SUMPRODUCT(--(Casework2!A2:A19>="1/1/2012"+0)*(Casework2!A2:A19<="31/12/2012"+0),--ISNUMBER(SEARCH("Ongoing",Casework2!H2:H19)))

但没有成功。

如何计算工作表中包含数据的行数,然后使用该范围替换A2:A19范围,然后将其与H2:H19范围进行比较,最后将结果放入特定范围内表工作表上的单元格?

1 个答案:

答案 0 :(得分:0)

为了回答(@ Irfan&#39;代码试图将D4写入Sheets(1)),请尝试:

Sub SUMP()
Dim str_Row As Long
str_Row = ThisWorkbook.Sheets("Casework2").Range("A65536").End(xlUp).Row
ThisWorkbook.Sheets("Casework2").Range("D4").Value = _
"=SUMPRODUCT(--(Casework2!A2:A" & str_Row & ">=""1/1/2012""+0)*(Casework2!A2:A" & str_Row & "<=""31/12/2012""+0),--ISNUMBER(SEARCH(""Ongoing"",Casework2!H2:H" & str_Row & ")))"
End Sub