有没有办法使用索引号来引用特定的单元格,比如在VBA中如何使用Cells(3,2)
来引用单元格C2。
我希望"=CELLS(3,2)"
能够奏效,但遗憾的是,这似乎并不存在。还有另一种方法吗?
修改
我应该澄清一下,我需要在SUM()工作表函数中使用它,因此它需要返回单元格引用,而不是单元格内的值。
答案 0 :(得分:4)
您可以使用OFFSET(original_range,rowsOffset,colOffset)
公式来获取对某个范围的引用,该范围与工作表上的某个点有特定的偏移。
您还可以传递两个额外的参数来确定返回范围的#rows和#columns的偏移量:
=SUM(OFFSET(A1,0,0,12,1))
将从A1开始为您提供12行1列的范围。
=SUM(OFFSET(A1,2,2,12,1))
将从C3开始
喜欢在VBA中执行Offset(r,c).Resize(12,1)
答案 1 :(得分:2)
你可以改变参考样式......对于我正在编写的某些函数,我经常更喜欢R1C1参考样式。
这是一个显示如何访问它的链接: http://www.excelqa.info/2010/12/06/switch-to-r1c1-reference-style-in-excel-2010/
答案 2 :(得分:1)
你可以写一个自定义公式来处理它。
Public Function customFunction(a As Integer, b As Integer, Optional sh As String)
If sh <> "" Then
customFunction = Sheets(sh).Cells(a, b).Value
Else
customFunction = Cells(a, b).Value
End If
End Function