用可变的列和范围在VBA中求和

时间:2019-07-06 17:55:45

标签: vba

我知道这个问题经常被问到,但是我一直找不到想要的答案。我正在尝试编写一个代码,该代码将能够找到关键术语,然后将该列求和一定数量的行。

我已经尝试将这段代码中的“ G”简单地替换为正确列(col)的变量,并且确保我的列变量与正确的列匹配。

Cells(subRow, col).Formula = "=SUM(G" & row & ":G" & subRow & ")"

例如,上面的方法有效;但我希望它看起来像这样:

Cells(subRow, col).Formula = "=SUM(col" & row & ":col" & subRow & ")"

我尝试过将col变量在引号内外移动,但我似乎找不到办法。

谢谢。

2 个答案:

答案 0 :(得分:0)

根据您描述的情况,您必须使用R1C1参考样式:

Cells(subRow, col).FormulaR1C1 = _
            "=SUM(R" & row & "C" & col & ":R" & subRow & "C" & col")"

答案 1 :(得分:0)

还有一个Cells(row, column).Resize(number of rows, number of columns)选项:

Cells(subRow, col).Formula = "=SUM(" & Cells(row, col).Resize(subRow - row, 1).Address(0, 0) & ")"