在工作表名称中包含“CL - ”的所有工作表上的3D Sumif?

时间:2016-09-27 12:17:24

标签: excel excel-formula

我有一个文件,可以每周添加和删除工作表,但我需要概述表在所有相关工作表上进行计算(sumif)。

我创建了 3D sumif ,但无法将其引用到我想要的参考表...所有相关表格都包含文字{{1} (这意味着客户端选项卡,然后客户端名称可以是任何东西)我目前有20多个客户端选项卡。

这是我的公式:

Cl - xxxx

=SUM(SUMIF(INDIRECT("'"&$B$5:$B$25&"'!$B$60:$B$999"),$A4,INDIRECT("'"&$B$5:$B$25&"'!D$60:D$999"))) 目前是一个标签列表,但我只是希望它基于标签名称是否包含$B$5:$B$25由于添加和删除标签我不能使用标签名单列表向前移动,因为使用此文档的人不会更新它,然后在它不起作用时感到沮丧!

有什么想法吗?我需要一些VBA代码吗?我是以错误的方式攻击它吗?

1 个答案:

答案 0 :(得分:1)

您需要将文件另存为macro-enabled,即使此设置不需要明确输入任何VBA

首先转到Name Manager并制定以下两个定义:

姓名FullSheetNames

=GET.WORKBOOK(1)&T(NOW())

姓名SheetNames

=MID(FullSheetNames,FIND("]",FullSheetNames)+1,255)

所需的数组公式** 是:

=SUM(IFERROR(SUMIF(INDIRECT("'"&IF(ISNUMBER(SEARCH("CL -",SheetNames)),SheetNames)&"'!$B$60:$B$999"),$A4,INDIRECT("'"&IF(ISNUMBER(SEARCH("CL -",SheetNames)),SheetNames)&"'!D$60:D$999")),0))

此致

**数组公式的输入方式与'标准'相同。公式。您只需按住CTRL和SHIFT键,然后按ENTER键,而不是按ENTER键。如果您已正确完成,您会注意到Excel在公式周围放置了大括号{}(尽管不要尝试自己手动插入这些括号)。