我正在使用这个公式。
=COUNTIFS(EXCEL_TAB!$A$1:$A$999999", "*"&"#_CELL_VALUE"&"*")
我如何指定 #_CELL_VALUE 可以是任何数字,后面跟着 _CELL_VALUE?原因是数据具有值 S_CELL_VALUE(字母 S)和 #_CELL_VALUE(# 是任何数字)。所以我需要区分它们。
Sample Data
RS_CELL_VALUE, 11_CELL_VALUE
RS_CELL_VALUE
11_CELL_VALUE
12_CELL_VALUE
13_CELL_VALUE, RS_CELL_VALUE
尝试代码
=COUNTA(REGEXMATCH(Data!A1:A999999, "*[0-9]_CELL_VALUE*"))
答案1
您可以使用:
=SUM(COUNTIFS(EXCEL_TAB!$A$1:$A$999999,"*"&"&SEQUENCE(1,10,0,1)&"_CELL_VALUE"))
如果你没有,SEQUENCE()
你可以改用{0,1,2,3,4,5,6,7,8,9}
。(我更喜欢它,因为我想习惯使用它,而且有时它有助于强制执行SPILL
原本不会发生的功能。但上面的数组常量并不难输入,所以……如果没有它……)
将所有可能的变化都进行检查才能让它起作用,不管怎样,人们都是这么做的(SEQUENCE()
或其他)。
COUNTIFS()
应该将成功次数加起来,但似乎没有这样做。但是,它确实记录了成功次数,因此SUM()
能够将这些符号加起来以获得所需的结果。可能由于SPILL
功能原因,它确实在这样做,但针对的是被检查的数组常量中的每个单独值(而不是范围中的每个单独单元格)。因此,您有 10 个(在本例中)单独的结果,如果任何单元格具有相同的内容,比如其中三个,那么这 10 个“桶”中的一个将通过 报告“3” COUNTIFS()
。由于您想了解所有 10 种可能性,因此将它们全部相加不仅可以为您提供单个总和值,还可以将您的单元格“占用空间”减少回公式所在的单个单元格,而不是 10 个单元格范围的结果,这些结果可能会试图溢出到其他内容之上,从而导致错误。
缺点(可能):正如所写,33_CELL_VALUE
和3_CELL_VALUE
两者都算数,因为初始*
允许前 3 个33_etc.
成为其中的一部分,因此公式认为这两个东西之间没有区别。如果这很重要,虽然我认为它并不重要,那么人们必须重新考虑呈现给的条件的那部分COUNTIFS()
。