Excel:对两个分隔符之间的一列中的所有数字求和>

Excel:对两个分隔符之间的一列中的所有数字求和>

假设我有大约 50 个类似于下面的单元格。我只想对 之后OT:和 之前的数字求和)。有些单元格没有OT:或 数字,因此不应包括在总和中。我该怎么做?

D:XYZ

D:(加时赛:7)

球员:(加时赛:13)

答案1

假设您的数据位于 A 列,第一项位于单元格 A1,并且假设您可以使用 B 列来保存一些临时数据。

在单元格 B1 中输入以下公式:

=IFERROR(value(MID(A1,FIND("OT: ",A1)+LEN("OT: "),FIND(")",A1,FIND("OT: ",A1))-FIND("OT: ",A1)-LEN("OT: "))),0)

解释:

FIND("OT: ",A1)返回字符串“OT:”第一次出现的位置

LEN("OT: ")返回“OT:”的长度,即 4(包括尾随空格)

FIND(")",A1,FIND("OT: ",A1))返回字符串“OT:”后第一次出现“)”的位置

MID(A1,FIND("OT: ",A1)+LEN("OT: "),FIND(")",A1,FIND("OT: ",A1))-FIND("OT: ",A1)-LEN("OT: "))根据上面解释的参数返回“OT:”和“)”之间的字符串。

VALUE(...)将字符串转换为数字,以便您可以添加数字。

IFERROR(..., 0)将那些不匹配的结果转换为#VALUE!0,这样您就可以添加数字而不会出现错误。

最后,请从B1单元格向下填充公式,使得A列中的每个数据在B列中都有对应的公式。将B列:B相加,就是您需要的结果。

答案2

在新的 Excel 中,您可以使用公式:

=SUM(IFERROR(--TEXTBEFORE(TEXTAFTER(A1:A5,"OT:"),")"),0))

其中A1:A5代表您的数据范围。

答案3

有很多方法可以实现预期结果。假设没有Excel Constraints按照发布的标签,那么可以使用TEXTAFTER()&的组合或&TEXTSPLIT()的组合,后者假设后面的分隔符是唯一的最后一个分隔符。以下是我的建议:TEXTAFTER()TEXTBEFORE():OT


  1. 使用TEXTAFTER()TEXTSPLIT()

在此处输入图片描述


• 单元格中使用的公式A5

=SUM(IFERROR(--TEXTAFTER(TEXTSPLIT(A1:A3,")"),"OT:"),0))

  1. 使用TEXTAFTER()TEXTBEFORE()

在此处输入图片描述


• 单元格中使用的公式A5

=SUM(IFNA(--TEXTAFTER(TEXTBEFORE(A1:A3,")"),":",-1),0))

然而,如果不使用现代版本Excel,则可以使用以下内容:

在此处输入图片描述


• 单元格中使用的公式A5

=SUM(IFERROR(--REPLACE(SUBSTITUTE(A1:A3,")",),1,FIND("OT:",A1:A3)+2,),0))

  • 首先,使用SUBSTITUTE()函数,从没有任何内容的字符串中删除右括号。
  • 其次,使用REPLACE()函数,删除包含之前的部分OT:
  • 添加,double unary即将--文本格式的数字转换为实际数字,并将其换行IFERROR()以解析错误值0
  • 最后,用来SUM()获取整个数组的总和。
  • 笔记:如果您不使用MS365或,Excel 2021则需要在退出编辑模式时使用CTRL++输入上述公式。SHIFTENTER

相关内容