【发布时间】:2013-05-27 05:49:42
【问题描述】:
我正在尝试在 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)"
这是代码的sn-p(最初在评论中):
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
【问题讨论】:
-
寻找,你应该FIND
-
什么“似乎不起作用”?
-
我正在尝试运行此代码 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
-
添加对您的问题不起作用的代码而不是评论。
-
和附加提示:在将公式分配给
.Formula属性时,您可以在 R1C1 语法中设置公式。尝试把.Formula改成.FormulaR1C1
标签: vba excel excel-2007 excel-formula