间接使用可变范围的工作表名称
我有以下公式:
=SUMPRODUCT(COUNTIF(INDIRECT("'"&D1:D2&"'!A1"),E2))
从这里拿走https://www.extendoffice.com/documents/excel/2541-excel-countif-across-multiple-worksheets.html
现在,我正在对D列做一个COUNTA:
=COUNTA(D:D)
这基本上会导致我有张数。
现在,我想使第一个公式使用第二个公式的结果:
=SUMPRODUCT(COUNTIF(INDIRECT("'"&D1:***COUNTA RESULT***&"'!A1"),E2))
什么是正确的语法来执行? 没有成功。
由于工作表通常具有字母名称,而您正尝试使用COUNTA而不是COUNT的解决scheme,
D1:index(D:D, match("zzz", D:D))
…来描述您的工作表名称范围。
但是,如果工作表名称是数字,
D1:index(D:D, match(1e99, D:D))
完成为,
=SUMPRODUCT(COUNTIF(INDIRECT("'"&D1:index(D:D, match("zzz", D:D))&"'!A1"),E2)) =SUMPRODUCT(COUNTIF(INDIRECT("'"&D1:index(D:D, match(1e99, D:D))&"'!A1"),E2))
您也可以使用OFFSET(D1, 0, 0, COUNTA(D:D), 1)
。 既然你已经在使用一个带有INDIRECT的volatile函数,添加另一个并不是什么大问题。