我有一个我希望建立的公式,能够向下拖动到多个行的自动完成。
=COUNTA(INDEX(1:100,0,ROW(A1)))
此公式的目的是计算每列中非空白单元格的数量。我知道我可以使用另一种公式...
=COUNTA(EIM!A$1:A$100)
...并拖动它,粘贴特殊值然后粘贴特殊转置它,但我想知道是否有另一种(更优雅)的方式。正如您在第二个公式中看到的那样,我想要提取另一个工作表的值。因此,我认为INDIRECT()是要走的路。
我的问题是:如何使用INDIRECT()与我的第一个使用INDEX()函数的公式结合使用?
以下是评估当前公式的屏幕截图(不确定是否有帮助):
答案 0 :(得分:4)
当然你可以,但是你呢?
为此,您可以使用R1C1样式,通过间接指定false
:
=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)))
如果每列代表不同的工作表,则间接可能是可接受的。