[英]Using INDIRECT() with INDEX() function
我有一个公式,希望可以将其向下拖动以自动完成许多行。
=COUNTA(INDEX(1:100,0,ROW(A1)))
此公式的目的是计算我每列中非空白单元的数量。 我知道我可以使用其他公式...
=COUNTA(EIM!A$1:A$100)
...并将其拖移,粘贴特殊值,然后粘贴特殊转置,但是我想知道是否还有另一种(更优雅的)方式。 正如您在第二个公式中看到的那样,我正试图提取另一个工作表的值。 因此,我认为INDIRECT()是必经之路。
我的问题是:如何使用INDIRECT()结合使用INDEX()函数的第一个公式来实现此目的?
以下是当前公式计算时的屏幕截图(不确定是否有帮助):
当然可以 ,但是应该吗?
为此,您可以通过间接指定false
来使用R1C1样式:
=COUNTA(INDIRECT("EIM!R1C"&ROW(A1)&":R100C"&ROW(A1),FALSE))
要不就:
=COUNTA(INDEX(INDIRECT("EIM!$1:$100"),0,ROW(A1)))
通常,如果您使用的是INDIRECT,则说明您做错了什么。 我所看到的唯一合理的间接用例是(a)通过公式选择另一个工作表(在Excel中没有好的方法),以及(b)编写一个引用命名单元格的Excel教程示例。
如果您始终引用特定的工作表,则可以使用:
=COUNTA(INDEX(EIM!$1:$100,0,ROW(A1)))
如果每一列代表一个不同的工作表,则间接的是可以接受的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.