计算整个电子表格中文本的出现次数

时间:2019-06-27 09:12:03

标签: google-sheets

我有一个电子表格,在每一列中都有一个名称列表。它们可以重复,甚至更糟-单元格可以包含一些其他文本(名称除外)。

我要做的是计算整个电子表格中该名称的出现次数(仅查看名称,省略可能的其他文本)。有可能吗?

我尝试了= UNIQUE公式,但无法垂直运行(我正在使用Google表格)

文档示例https://docs.google.com/spreadsheets/d/1STtJr0yisSeuv2w8_JVgQABAL5EDzI8aFmH8Vp2cOko/edit?usp=sharing

2 个答案:

答案 0 :(得分:2)

您可以使用Countif,Arrayformula和Regexreplace来完成此任务

假设您具有A2:E12的数据范围,并且预填充的唯一名称从A14开始

公式

=countif(ARRAYFORMULA(regexreplace($A$2:$E$12,".\(.*","")),A14)

将公式复制到最后一行

希望有帮助!

答案 1 :(得分:0)

我确定其他人会提供一种更为优雅的解决方案,但这将采用电子表格中显示的数据,并且只需几分钟即可实现。

  1. 将此公式粘贴到单元格F3中

    =FILTER({A3:A13;B3:B6;C3:C5;D3:D5;E3:E5;A18:A21;B18:B20;C18:C20;D18:D20;E18:E19}, LEN({A3:A13;B3:B6;C3:C5;D3:D5;E3:E5;A18:A21;B18:B20;C18:C20;D18:D20;E18:E19}))

这将创建一个由多个较小列表组成的单列列表。

  1. 突出显示在F列中创建的名称范围(基于测试数据= F3:F41),单击“复制”,

  2. 突出显示单元格G3,单击“选择性粘贴”(仅“粘贴值”)-这会将公式转换为条目列表。

  3. 将此公式粘贴到单元格H3中-这会删除括号中的所有数据
    =left(G3,iferror(search(" (",G3)-1,len(G3)))

  4. 将公式向下复制到G列中的数据一样多的行

  5. 将此公式粘贴到单元格I3中-列出了唯一的名称
    =unique(H3:H41)

  6. 将此公式粘贴到单元格J3中,并复制与列I中的数据一样多的行-这将计算主列表中每个唯一名称的实例数。
    =COUNTIF(H:H, I3)


enter image description here