Excel/Google Sheets技术问询:求提取四列共有的邮箱的可行公式
找出四列中共同存在的邮箱公式方案
适用于Excel 365/2021(动态数组版本)
直接用FILTER+COUNTIFS组合公式,一步生成结果:
=FILTER(A:A, (A:A<>"")*(COUNTIFS(B:B, A:A, C:C, A:A, D:D, A:A)=1))
- 逻辑说明:
COUNTIFS(B:B,A:A,C:C,A:A,D:D,A:A)统计A列每个邮箱同时在B、C、D列出现的次数,等于1代表该邮箱在三列都存在;(A:A<>"")排除A列空单元格;最后FILTER筛选出符合条件的邮箱,自动溢出到下方单元格。
适用于旧版Excel(无动态数组功能)
在空白列(比如E2单元格)输入以下数组公式,按Ctrl+Shift+Enter确认后下拉填充,直到出现#NUM!停止:
=INDEX(A:A, SMALL(IF((A:A<>"")*(COUNTIFS(B:B,A:A,C:C,A:A,D:D,A:A)=1), ROW(A:A), ""), ROWS(E$2:E2)))
- 逻辑说明:
IF函数标记出A列中“非空且在B/C/D列都存在”的行号,SMALL依次提取这些行号,INDEX根据行号返回对应邮箱;ROWS(E$2:E2)用于下拉时依次取第1、2、3...个符合条件的结果。
额外提示
如果需要从四列的全量集合中找共同邮箱(而非仅以A列为基准),可以先将四列数据合并去空(动态数组版本用TOCOL(A:D,1)),再结合UNIQUE和COUNTIF处理,但通常以单列为基准效率更高。
内容的提问来源于stack exchange,提问作者David G
相关产品推荐
相关产品推荐

