如果单元格包含+,则求和子字符串

时间:2019-07-23 12:40:54

标签: excel countif

我有一个参加名单,我必须对此稍作修饰。

Column
Yes
Yes
no
Yes +1
Yes +3
no

总和必须为8。4是+ 4个额外人员。

我从开始:

=COUNTIF(D2:D31, "YES*")+2

(数字2是主机,因此它们是静态的),效果很好。 如果行中带有+号,我也可以添加1,但是我不能添加+3(或者说它变成了1。

有帮助吗?

如果该行的编号为+,我需要提取该行的编号并将其加到总数中。

4 个答案:

答案 0 :(得分:4)

这是一个解决方案,尽管它需要一个额外的列。

在一列E中,您可以在每个单元格旁边使用以下内容:

=IFERROR(INT(RIGHT(D2,LEN(D2)-FIND("+",D2))),"")

这将获得+号右边的数字并将其转换为整数值。如果没有加号,它将为该行返回一个空字符串。

然后,您可以在整个单元格中进行以下操作:

=COUNTIF(D2:D31, "YES*")+SUM(E2:E31)

除了对“是”的数量进行汇总以外,还对新列进行汇总。

enter image description here

答案 1 :(得分:1)

有点混乱,但是根据数据集的简单程度,您可以为每种组合调整如下公式:

=COUNTIF(D2:D31, "Yes")+2*COUNTIF(D2:D31, "Yes +1")+4*COUNTIF(D2:D31, "Yes +3")

答案 2 :(得分:1)

对于,您可以使用:

=SUMPRODUCT(IFERROR(MID(A1:A6,SEARCH("Yes +",A1:A6)+1,LEN(A1:A6)),0)*1)+COUNTIF(A1:A6,"Yes*")

否,您可以使用:

=SUMPRODUCT(IFERROR(MID(A1:A6,SEARCH("No +",A1:A6)+1,LEN(A1:A6)),0)*1)+COUNTIF(A1:A6,"No*")

都是数组公式,因此可以通过 Ctrl + Shift + Enter

输入

enter image description here

答案 3 :(得分:1)

另一种方式

=IF(ISNUMBER(SEARCH("Yes",A2)),1,0)+IFERROR(MID(A2,FIND("+",A2)+1,99),0)

enter image description here