我有一个电子表格,在每一列中都有一个名称列表。它们可以重复,甚至更糟-单元格可以包含一些其他文本(名称除外)。
我要做的是计算整个电子表格中该名称的出现次数(仅查看名称,省略可能的其他文本)。有可能吗?
我尝试了= UNIQUE公式,但无法垂直运行(我正在使用Google表格)
文档示例https://docs.google.com/spreadsheets/d/1STtJr0yisSeuv2w8_JVgQABAL5EDzI8aFmH8Vp2cOko/edit?usp=sharing
答案 0 :(得分:2)
您可以使用Countif,Arrayformula和Regexreplace来完成此任务
假设您具有A2:E12的数据范围,并且预填充的唯一名称从A14开始
公式 :
=countif(ARRAYFORMULA(regexreplace($A$2:$E$12,".\(.*","")),A14)
将公式复制到最后一行
希望有帮助!
答案 1 :(得分:0)
我确定其他人会提供一种更为优雅的解决方案,但这将采用电子表格中显示的数据,并且只需几分钟即可实现。
将此公式粘贴到单元格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}))
这将创建一个由多个较小列表组成的单列列表。
突出显示在F列中创建的名称范围(基于测试数据= F3:F41),单击“复制”,
突出显示单元格G3,单击“选择性粘贴”(仅“粘贴值”)-这会将公式转换为条目列表。
将此公式粘贴到单元格H3中-这会删除括号中的所有数据
=left(G3,iferror(search(" (",G3)-1,len(G3)))
将公式向下复制到G列中的数据一样多的行
将此公式粘贴到单元格I3中-列出了唯一的名称
=unique(H3:H41)
将此公式粘贴到单元格J3中,并复制与列I中的数据一样多的行-这将计算主列表中每个唯一名称的实例数。
=COUNTIF(H:H, I3)