在公式vba中迭代循环

我试图从行3开始总结一个可变范围的数据。sortedRow是数据结尾的行号。 lColumn是用作数字的最后一列。

我试图总结第1行H列的数据。

我需要公式计算列G的总和,然后迭代当前迭代引用的列(这将是列h至x)

我已经采取了斯科特·克莱纳的build议,并编辑我的代码

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) 

但你仍然有问题在那里。 如果我= 4和sortedRow = 12让我们说,这是你会有的。

 (G3:G12,43:412, 1) 

所以你需要修复你的Criteria_range1。 我不清楚你的问题你想要的标准是什么。

这里是参数的信息。 https://msdn.microsoft.com/en-us/library/office/ff193011.aspx

修复了我想添加的sumifs列中的#VALUE单元格后,问题得到了解决。 我做了一个条件语句,把所有的错误都设为零。 这允许循环起作用。