SumProduct使用多个标准返回太多的数据
虽然这个问题已经被问到和回答了,(堆栈溢出是我学会如何实现SP的地方),但是我想不出来的问题出现了。
我正在使用SP来使用产品编号(使用通配符)和特定date在数据透视表中汇总出货量。 例如,部件号可以是“AX10235-HP”,“AX11135-HP”,“AX10235-HP2”,“AX10235-HPSPARE”或TP10101-IBM。 (有各种各样的数字。)
所以在这种情况下,我想总结“AX ??? 35-HP”的数量出货量。 我只想简单列出前两个部分。 但是,使用的命令会导致除* -IBM编号之外的所有部分总和; 就好像在号码末尾有个通配符。 换句话说, "AX???35-HP"
与"AX???35-HP*"
。 我已经尝试用引号包装值,但它使用引号字面上如此失败。
这是function
SUMPRODUCT((S_PART_DATA)*(ISNUMBER(SEARCH($A6,S_PART_RANGE))*(S_PART_DATES=T$4)))
-
S_PART_DATA
数组, -
S_PART_RANGE
部件号列表数组, -
S_PART_DATES
date发货数组已完成
它按照你描述的方式工作,因为SEARCH
函数在其他文本中发现$ A6,因此它可能不是完全匹配 – 使用SUMIFS
函数更好:
=SUMIFS(S_PART_DATA,S_PART_RANGE,$A6,S_PART_DATES,T$4)
假设所有命名的范围是相同的大小和A6包含价值AX 35 HP
如果这不起作用,请尝试此版本
=SUMPRODUCT(S_PART_DATA*ISNUMBER(SEARCH("^"&$A6&"^","^"&S_PART_RANGE&"^"))*(S_PART_DATES=T$4))
连接^值意味着你将[只]得到完全匹配