[英]converting excel sumifs formula to vba code
我正在尝试在VBA中进行SUMIFS计算。 当我在电子表格中输入它时它工作正常,但是当我尝试将其转换为VBA时,它似乎不起作用。
Sheets("Master").Range("B2:B" & Range("A" & Rows.Count).End(xlUp).Row).Formula = _
"=SUMIFS(Input!C32,Input!C37,Master!C1,Input!C31,Master!R1C)"
这是代码片段(最初在评论中):
Dim LastRow As Long
Dim rw As Long
LastRow = Range("A" & Rows.Count).End(xlUp).Row
For rw = 2 To LastRow
Sheets("Master").Cells(rw, 2).Value = Application.WorksheetFunction.SumIfs(Sheets("Input").Range("AF:AF"), Sheets("Input").Range("AK:AK"), Sheets("Master").Range("A:A"), Sheets("Input").Range("AE:AE").Sheets("Master").Range("B2"))
Next
您没有在criteria1中指定要查找的值。 您必须指定一个值,而不是范围。
你的总和范围很好。
Sheets("Input").Range("AF:AF")
你的标准范围1很好。
Sheets("Input").Range("AK:AK")
您的标准1需要是一个值,而不是一个范围。
使用此Sheets("Master").Range("A2").value
而不是Sheets("Master").Range("A:A")
显然,如果需要让循环工作,可以用criteria变量替换criteria1中的2。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.