Sub test()
'Dim total(1 To 9) As Variant
ReDim total(1 To 9) As Variant
For i = 1 To 9
total(i) = Application.WorksheetFunction.SumIf(Sheets("Sheet2").Range(Cells(3, 3), Cells(i, 3)), ">" & _
Sheets("Sheet2").Range(Cells(3, 6), Cells(i, 6))-60, _
Sheets("Sheet2").Range(Cells(3, 4), Cells(i, 4)))
Next i
End Sub
任何人都可以告诉我为什么我会一直收到此错误,虽然我正在使用我的阵列变体?一切似乎都很好。 我想要做的是从单元格中的日期扣除60天,然后总结初始日期和扣除日期之间的金额。所以它会是这样的: enter image description here
答案 0 :(得分:0)
Sheets("Sheet2").Range(Cells(3, 6), Cells(i, 6))
(标准参数)应该是单个单元格或值,而不是范围。定义表格的单元格(3,3),单元格(i,3)(“Sheet2”)。范围(...)没有定义的父工作表。请参阅Is the . in .Range necessary when defined by .Cells?
with workSheets("Sheet2")
For i = lbound(total) To ubound(total)
total(i) = Application.SumIf(.Range(.Cells(3, 3), .Cells(i, 3)), _
">" & .Cells(i, 6), _
.Range(.Cells(3, 4), .Cells(i, 4)))
Next i
end with