我有一个文件,可以每周添加和删除工作表,但我需要概述表在所有相关工作表上进行计算(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代码吗?我是以错误的方式攻击它吗?
答案 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在公式周围放置了大括号{}(尽管不要尝试自己手动插入这些括号)。