再会,
是否有人对如何引用其中包含工作表名称的单元格并将其添加到确定该工作表中包含数据的最后一行的公式提出建议。
我使用了两个不同的公式单元格 M9 和 M10,其中公式直接引用名为 8 的工作表,该工作表告诉我 A 列中包含数据的最后一个单元格位于第 15 行。这是预期的结果。
=SUMPRODUCT(MAX(('8'!A:A<>"")*ROW('8'!A:A))) 或 =MAX(IF(ISBLANK('8'!A:A),0,ROW(A:A))) 将提供该功能。
下面的屏幕截图显示了这些公式提供了正确的结果,单元格 M9 和 M10 中显示了相关公式,这些公式显示在 N 列中。
由于这是主页,是目录,我希望工作表名称查看 A 列中的相关单元格并拉动填充工作表名称。这样,我可以将公式拉下来以进行任何新的更改。这适用于下面公式中的列,但我不知道如何使用间接或类似方法将其添加到上面的公式中。下面加粗。
=INDIRECT("'"&A9&"'!" &"A"&SUMPRODUCT(MAX(('8'!A:A<>"")*ROW('8'!A:A))))
在下一个公式中,我尝试让 INDIRECT 获取行搜索公式的开头,但它没有提供正确的结果。抱歉,我似乎无法正确将该组件加粗。
=INDIRECT("'"&A9&"'!"&"A"&SUMPRODUCT(MAX(("'"&A9&"&'!"&A:A<>"""")*ROW('8'!A:A))))
下面的屏幕截图显示单元格 K8 中的结果正确,但单元格 K9 中存在问题。
任何建议都将受到欢迎。
谢谢,布拉德
答案1
更改第二个公式(不成功的公式)的这部分:
MAX(("'"&A9&" & '!"& A:A <> "" "")
(注意我用空格延伸出的区域)如下所示:
MAX((INDIRECT("'"&A9&"'!"&"A:A")<>"")
目前,这一部分有几个错误。首先,你不能简单地构建字符串并将其直接用作地址。这就是使用 来INDIRECT()
获取这样并执行那样的操作。你很清楚这一点,所以一定是在编写时忘记了这一步。
&
第二个错误是“A9”后面的字符串中多了一个“&”符号 ( )... 不好。必须删除它。
第三,该部分两边没有双引号A:A
。必须有。
第四行也是最后一行是比较另一侧的四个双引号字符串。应该是两个,而不是四个。
一旦你做到了这些,它就会像魔法一样有效。