发布
社区首页 >问答首页 >如何对包含特定文本字符串的表格列中的单元格进行计数(COUNT.IF不起作用)

如何对包含特定文本字符串的表格列中的单元格进行计数(COUNT.IF不起作用)
EN

Stack Overflow用户
提问于 2020-03-31 20:46:23
回答 1查看 312关注 0票数 1

我需要计算包含特定文本字符串的表列中有多少个单元格。我正在使用这个公式,它工作得很好:

=COUNT.IF(TB_table_name[col_name];"*string_to_be_found*")

但我只需要计算过滤后的细胞数。我已经在互联网上找到了可能的解决方案(使用SUMPRODUCT),但只适用于普通单元格,而不适用于表格集合。

这是我的表格类型:

正如您所看到的,在同一单元格中有许多值(发生这种情况是因为它是由MS表单中的调查自动生成的)。因此,我需要搜索要计数的特定字符串。

使用"COUNT.IF“我得到的结果是:

请注意,单元格中的值不是随机的,而是预定义的-当然,序列不能相同,但可能的术语列表是相同的。

你能帮我解决这个问题吗?相信我,我已经尝试了很多方法,但都没有效果,这似乎是一件很容易实现的事情:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-31 21:54:51

诀窍是将您在使用SUMPRODUCT时发现的几个想法结合起来。

您很可能找到了this reference (或类似的一个),它给出了如下公式的指导:

代码语言:javascript
代码运行次数:0
复制
=SUMPRODUCT(SUBTOTAL(3,OFFSET(B2:B7,ROW(B2:B7)-MIN(ROW(B2:B7)),,1))*(B2:B7="Quality"))

它可以转化为问题空间,如下所示:

代码语言:javascript
代码运行次数:0
复制
=SUMPRODUCT(SUBTOTAL(3,OFFSET(TB_table_name[col_name],ROW(TB_table_name[col_name])-MIN(ROW(TB_table_name[col_name])),,1))*(TB_table_name[col_name]="*string_to_be_found*"))

如果您不使用通配符搜索,则可以很好地执行此操作。但这正是你所需要的。因此,在this answer中,它显示SUMPRODUCT中的通配符需要使用--运算符。因此,结果是将这两个答案结合起来,你就会得到:

代码语言:javascript
代码运行次数:0
复制
=SUMPRODUCT(SUBTOTAL(3,OFFSET(TB_table_name[col_name],ROW(TB_table_name[col_name])-MIN(ROW(TB_table_name[col_name])),,1))*(--(ISNUMBER(FIND("string_to_be_found",TB_table_name[col_name])))))

请注意,string_to_be_found没有通配符*说明符。这是由FIND函数处理的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60950911

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档