修改COUNTIF公式以计算括号内

问题描述 投票:0回答:1

我有以下公式,用于计算给定范围内数字(即 0/2、0/5、0/1 等)中出现 0 值的次数细胞。

=COUNTIF(Z7:Z30,"0/*")

只要上述范围(Z7:Z30)中的数据格式如上,即0/31/2等,就可以正常工作。但是用户会这样将数据放入此单元格范围后,周围将有一组括号 - 即 (2.00/3.00),但使用括号时,公式不会计算 0 的记录。所以我相信我要么需要在单元格数据范围中有一个公式,当用户将数据(带括号)粘贴到 Excel 中时自动删除括号集,要么我需要调整上面计算 0/ 记录的公式基本上忽略括号。

我无法使用第一个选项找到一个简单的解决方案,因为我不想要求我的用户在其他地方输入数据,然后在单元格区域中没有括号的情况下进行反映,所以我更多地关注第二个选项修改上面的公式,但是当我尝试将上面的公式与

SUBSTITUTE
公式结合起来以删除括号时,我收到错误。这就是我试图实现的目标:

=COUNTIF(SUBSTITUTE(SUBSTITUTE(Z7:Z30, "(", ""), ")", ""),"0/*")

如果数据的格式不带括号,则此公式可以正常工作,但是一旦数据两边加上括号,则该公式不起作用:

enter image description here

下面我使用 SUBSTITUTE 公式删除上面单元格 Z29 中的括号。我要么希望能够在用户输入数据的实际单元格范围中使用此公式,并重新格式化以删除括号,要么我需要能够将以下公式合并到上面的 COUNTIF 公式中(更喜欢最简单的解决方案)。

enter image description here

希望我已经解释得足够好,但如果我可以澄清任何事情,请告诉我,提前感谢!

excel excel-formula
1个回答
0
投票

你可以尝试:

=LET(
    z_, Z7:Z30,
    strip_parens, SUBSTITUTE(SUBSTITUTE(z_, "(", ""), ")", ""),
    SUM(--(--TOCOL(TEXTBEFORE(strip_parens, "/"), 2) = 0))
)
  • TOCOL(,2)
    删除所有错误
    --
    转换为数字

Result

© www.soinside.com 2019 - 2024. All rights reserved.