对行中单元格的数值求和,但前提是它们包含特定的alpha值

时间:2015-12-14 18:59:40

标签: excel equation

我正在为当地的非营利组织生成电子表格,用于跟踪病假和休假时间。主数据输入页面是每个员工每月有一行的日历。这产生一行包含以下种类的值组合的单元格; V1JD1V.5S1S.5。这些代表使用的时间类型(V,JD,S,P),如果是完整或半天休息(1,.5)。

我想为每个值创建一个单独的等式,它会检查该值范围内的每个单元格,并仅包含具有该值的天数并将它们相加。

在将数值包含在包含等式的数学中之前,如何检查单元格中是否有特定的alpha变量?

enter image description here

1 个答案:

答案 0 :(得分:0)

如果它只是一个1个字母的前缀,那么这将起作用:

=SUM(IFERROR(RIGHT($B11:$AF11,LEN($B11:$AF11)-1),0)*1) 

对于1月份的第一行,请调整范围以适应。

如果超过它多毛一点:

=SUM(IFERROR(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(UPPER($B11:$AF11),"S",""),"P",""),"V",""),"JD","")*1,0))

对于其他每个选项,必须使用另一个替代函数来处理它。

必须使用Ctrl-Shift-Enter输入这些数组公式。

如果您希望每个人分开:

=SUM(IFERROR(SUBSTITUTE(UPPER($B11:$AF11),"JD","")*1,0))
=SUM(IFERROR(SUBSTITUTE(UPPER($B11:$AF11),"S","")*1,0))
...

等等

如果您的报告设置如下:

enter image description here

然后您可以使用以下数组公式:

=SUMPRODUCT((Sheet6!$A$11:$A$30=$A2)*(IFERROR(--SUBSTITUTE(UPPER(Sheet6!$B11:$AF30),B$1,""),0)))

输入B2,点击ctrl-shift-return。然后向上和向下复制。它将显示每个总计。 Sheet6是数据所在工作表的名称。