vba中的相对参考小计公式

时间:2014-06-05 20:03:28

标签: excel vba excel-vba formula subtotal

我正在尝试创建一个每隔几列都有小计的表。我的vba代码将来自另一个工作表的数据分类并分类,现在我正在尝试编写代码以放入小计公式。这就是我所拥有的:

Sub Macro21()
Dim FI(1 To 3) As Variant
FI(1) = "Fixed Income"
FI(2) = 10
FI(3) = 21

Sheets("Sheet1").Cells(FI(2), 3).FormulaR1C1 = "=SUBTOTAL(9,R[1]C:R[FI(3)-FI(2)]C)"

End Sub

FI(2)和FI(3)是此部分的开始和结束行。我在宏的其他部分使用它们,并且当新项目放在一个类别下时它们会被更新。

当我运行它时,它给我一个错误。有任何想法吗?

1 个答案:

答案 0 :(得分:0)

我认为您需要将构建公式作为字符串,而不是让它引用您的Variant数组。怎么样:

Sheets("Sheet1").Cells(FI(2), 3).FormulaR1C1 = _
     "=SUBTOTAL(9,R[1]C:R[" _
   & CStr(FI(3)-FI(2)) _
   & "]C)"

这假设结果字符串是你想要计算的......