我在excel中有一个包含位置的列表,但有些单元格有多个位置用“_”字符分隔,例如“_ Location1 _ Location 2”当只有1个位置时,我可以使用Sumif搜索字符串并添加单元格旁边的数字如此处所示
我的问题不是搜索字符串,而是搜索列表中的字符并查找它找到的单元格中有多少字符我将在不同的单元格中添加公式,然后显示上面显示的字符
示例公式 NOT REAL
{{1}}
我知道搜索确实像这样工作,但作为示例代码,这就是我想象的
答案 0 :(得分:2)
找到每个位置的总和使用这个数组公式:
=SUMPRODUCT((ISNUMBER(SEARCH(D4,$A$4:$A$9)))*($C$4:$C$9/(IF(ISNUMBER(FIND("_",$A$4:$A$9)),LEN($A$4:$A$9)-LEN(SUBSTITUTE($A$4:$A$9,"_","")),1))))
作为数组公式,需要使用Ctrl-Shift-Enter确认。如果操作正确,那么Excel会将{}
放在公式周围。
在E4中输入公式,按Ctrl-Shift-Enter,然后复制/填充。
然后得到所有的总和只是将上面的行加起来。
使用常规公式:
您需要一个包含以下公式的辅助列:
=C4/(IF(ISNUMBER(FIND("_",A4)),LEN(A4)-LEN(SUBSTITUTE(A4,"_","")),1))
我把我放在G栏。
然后我们可以使用简单的SUMIF():
=SUMIF(A:A,"*" & D4 & "*",G:G)