代码之家  ›  专栏  ›  技术社区  ›  codeEnthusiast

在行中搜索字符和总和之间的字符串

  •  0
  • codeEnthusiast  · 技术社区  · 7 年前

    假设我有一个列,其中有空行和结合文本和数字的行。例如,A1可能看起来像“some text(2)”,A2可能包含“some more text(7)”,A3可能为空,A4可能看起来像A1和A2。我希望能够快速找到A列括号之间的数字之和。我已经知道了如何使用MID、LEFT和FIND函数从每个字符串中提取值,但是将它们的总和计算成一个非常长的公式(考虑到该列可能包含多达20个这样的单元格)。这就是我一直在用的:

    SUM(IFERROR(MID(LEFT(A1,FIND(")",A1)-1),FIND("(",A1)+1,LEN(A1)), 0) +
        IFERROR(MID(LEFT(A2,FIND(")",A2)-1),FIND("(",A2)+1,LEN(A2)), 0)+...
    

    1 回复  |  直到 7 年前
        1
  •  0
  •   Tim Williams    7 年前

    可以使用数组公式:

    =SUM(1*IFERROR(MID(LEFT($A$1:$A$20,
         FIND(")",$A$1:$A$20)-1),FIND("(",$A$1:$A$20)+1,LEN($A$1:$A$20)), 0))
    

    使用输入 Ctrl键 + + 输入

    例如:

    enter image description here

    推荐文章