我手上有一张数字范围表格,如何按索引引用完整的列或行?
我使用的是2007版Excel。我查阅了HLookup/Vlookup/Index等函数,但没有成功。
我手上有一张数字范围表格,如何按索引引用完整的列或行?
我使用的是2007版Excel。我查阅了HLookup/Vlookup/Index等函数,但没有成功。
我猜你的意思是在另一个公式中引用整个列/行作为范围/数组?
如果是的话,我能想到的唯一方法是使用OFFSET
=OFFSET($A:$A,,MyColIndex-1)
=OFFSET($1:$1,MyRowIndex-1,)
那是因为您的代码中有一个无限循环,导致CPU占用率飙升并最终导致系统崩溃。
=OFFSET(reference,rows,cols,[height],[width])
但是如果您在A的左侧插入列或在1上面插入行,则这种方法将不起作用。
编辑:刚刚找到了解决那个小问题的方法...
=OFFSET($A:$A,,MyColIndex-Column($A:$A))
=OFFSET($1:$1,MyRowIndex-Row($1:$1),)
=SUM(INDIRECT("Table1["& E1 &"]"))
=SUM(INDEX(2:1048576,0,2))
这将对指定范围内的第二列进行求和,即B2:B1048576。它之所以有效是因为在index函数的行参数中输入0会返回指定范围内的整个列。以下代码将只对B2:B3进行求和:
=SUM(INDEX(2:3,0,2))
...这将求和C2:C3
=SUM(INDEX(B2:F3,0,2))
Index
函数可用于VBA数组的同一应用程序。 - brettdj
INDIRECT
来实现... - stevepastelan