我正在尝试对从第 3 行开始的可变数据范围求和。 sortedRow 是数据末尾的行号。 lColumn 是用作数字的最后一列。
我正在尝试对第 1 行 H - lColumn 列中的数据求和。
我需要让公式计算 G 列的总和,然后通过当前迭代对引用的列进行迭代(这将是从 h 到 x 的列)
我接受了 Scott Craner 的建议并将我的代码编辑为
Dim lColumn As Long
lColumn = ActiveSheet.Cells(3, Columns.Count).End(xlToLeft).Column
sortedRow = Cells(Rows.Count, "D").End(xlUp).Row
Dim i As Integer 'iterated column sum cell
For i = 8 To lColumn
Cells(1, i).Value =Application.WorksheetFunction.SumIfs(Range(Cells(3,7),
Cells(sortedRow, 7)), Range(Cells(3, i), Cells(sortedRow, i)), 1)
Next i
但是,单元格并未使用其值进行更新。
感觉就像我在将数字实际应用于单元格时遗漏了一些非常明显的东西。我以为上面会做到这一点。
由于正在应用的公式存在问题,添加了 lColumn 声明
添加了 sortedRow 声明。
基本上这个。但是具有可变的列长度和列数。
对 H 列来说,体积列中有“#VALUE”并不重要。所以我认为其他列无关紧要。
任何帮助,将不胜感激!
最佳答案
你这里有问题。
("$G3:$G" & sortedRow, i & "3:" & i & sortedRow, 1)
("$G3:$G" & sortedRow & "," & i & "3:" & i & sortedRow, 1)
但是你仍然有问题。如果 i=4 和 sortedRow=12 比方说,这就是你所拥有的。
(G3:G12,43:412, 1)
所以你需要修复你的 Criteria_range1。从你的问题中我不清楚你想要的标准是什么。
这是有关论点的信息。 https://msdn.microsoft.com/en-us/library/office/ff193011.aspx
关于vba - 公式vba中循环的迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32124985/