我需要创建一个函数来计算两个日期之间帐号的出现次数。第一个日期基于函数输入,第二个日期提前 3 个月(日期可能不包含在数据集中)。该范围内的日期值的格式为“dd/mm/yyyy h:mm”。由于数据集的大小约为 150,000 行,我想在代码中执行此操作,而不是在指定单元格内粘贴或评估 COUNTIF 公式。
仅引用 AccountNo 变量时工作表函数有效,但添加条件“">=”或“
例如Application.WorksheetFunction.CountIfs(Range("L2:L" & Endrow), AccountNo) > 1 然后 ''''(有效)
该函数需要根据 countif 结果返回一个结果,如下所示。
Thanks,
Function LastWrapUp(Date1 As Date, AccountNo)
Dim Date2 As Date
Dim Endrow As Long
Date2 = DateAdd("M", 3, Date1)
Endrow = Range("A" & Rows.Count).End(xlUp).Row
If Application.WorksheetFunction.CountIfs(Range("A2:A17643"), ">=" & Date1, Range("A2:A" & Endrow), "<" & Date2, Range("L2:L" & Endrow), AccountNo) > 1 Then
LastWrapUp = "Not Final Wrap Up"
ElseIf Application.WorksheetFunction.CountIfs(Range("A2:A" & Endrow), ">=" & Date1, Range("A2:A" & Endrow), "<" & Date2, Range("L2:L" & Endrow), AccountNo) = 1 Then
LastWrapUp = "Yes"
Else
LastWrapUp = "Error"
End If
Debug.Print LastWrapUp
End Function