我有一份水果订单的电子表格。 给定顺序中包含的水果品种全部写在同一个单元格中,以逗号分隔。 如果我想获取包含香蕉的订单数量,我会执行以下操作
=COUNTIFS('Order List'!C:C,F$1,'Order List'!AG:AG,"*Banana*")
如果我想获取包含橙子的订单数量,我会执行以下操作
=COUNTIFS('Order List'!C:C,F$1,'Order List'!AG:AG,"*Orange*")
这有效。
现在我想知道有多少订单包含香蕉和/或橙子。 之前 2 个结果的总和不起作用,因为任何同时包含橙子和香蕉的订单都会被计算两次。
我找不到一种方法来编写与两者都出现的情况相匹配的正则表达式(以减去交集),因为1)列表中没有排序,因此香蕉可能出现在橙色之前或之后,2)因为当列表中有更多项目时,交叉点的数量增长得太快。
这似乎是一个简单的问题,但我还没弄清楚如何做到这一点,非常感谢您的帮助!
最佳答案
您可以尝试:
C1
中的公式:
=SUMPRODUCT(--(MMULT(IFERROR(FIND(TRANSPOSE(B1:B2),A1:A5),0),MOD(ROW(A1:INDEX(A:A,COUNTA(B1:B2))),1)+1)>0))
我认为您需要 CSE 输入此 Excel365 之前的版本。
关于Excel COUNTIFS OR 函数用于非独占匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65625432/