我有三个工作表用于此代码-付款分录、事务处理和最终帐单。我想对事务处理中的B列求和,同时搜索日期列(D列),如果它在付款分录表上请求的日期范围内,并且名称与最终帐单上的B列匹配。符合这些约束条件的总和将打印到最终帐单表上的E列。
这是其中一行的正确Excel语法
第一个月
现在,我想在事务页面中搜索上述代码中的最后一行(而不是第50行),以查找最终账单页面上E列的每个填充行(因此,它从B列搜索当前行,而不是B6)。
这是我的方法,但我得到一个语法错误:
Dim final As Worksheet
Dim database As Worksheet
Dim payment As Worksheet
Dim CLastFundRow As Integer
Set final = ThisWorkbook.Sheets("Final Bill")
Set database = ThisWorkbook.Sheets("Transactions")
Set payment = ThisWorkbook.Sheets("Payment Entry")
CLastFundRow = database.Range("A3").End(xlDown).Row
final.Range("E6:E100").FormulaR1C1 =SUMIFS(database.range("B3:B" & CLastFundRow & ", database.Range("D3:D" & CLastFundRow & "), ">="& payment.Range("L20:M20"), database.Range("D3:D" & CLastFundRow & "), "<="&'payment.Range("O20:P20"), database("A3:A5" & CLastFundRow & "), final.range("B6")
编辑以添加解决方案:
CLastFinRow = final.Range("B6").End(xlDown).Row
final.Range("E6:E" & CLastFinRow).Formula2 = "=SUMIFS(Transactions!B$3:B$" & CLastFundRow & ", Transactions!D$3:D$" & CLastFundRow & ","">=""&'Payment Entry'!$L$20:$M$20, Transactions!D$3:D$" & CLastFundRow & ", ""<=""&'Payment Entry'!$O$20:$P$20, Transactions!A$3:A$" & CLastFundRow & ", 'Final Bill'!B6)"```
1条答案
按热度按时间5gfr0r5j1#
您正在将单元格的公式设置为文本,因此无法使用tou使用的范围,因此出现了sintax错误