问题:
前两天,我们学会了标记和抓取重复项,已经能高效应对大部分工作。但现在,请想象一个更“苛刻”的场景:你手中的两份名单是动态更新的,随时会有新数据加进来。老板要求你制作的“重合客户名单”也要随之自动实时更新,并且名单本身要整洁美观(去除可能存在的自身重复),你该怎么办?

用前两天的办法,每次数据变动,你可能都需要重新填充公式、重新排序,略显繁琐。你需要一个“终极解决方案”——只需输入一次公式,就能得到一个动态的、自动去重的、整齐排列的结果表。

问题分析:
这个需求是最高阶的,它要求我们的解决方案:

  1. 动态数组:公式结果能自动溢出成一个区域,无需下拉填充。

  2. 动态引用:源数据区域变化时,结果区域自动重算并更新。

  3. 一步到位:同时完成“筛选重复项”和“去除结果中的自身重复”两步操作。

这需要请出Excel 365/Excel 2021中的函数:FILTERUNIQUEFILTER 是超级筛选器,UNIQUE 是去重专家。将它们组合,威力无穷。

问题解决:
操作步骤(请确保你的Excel是Office 365或2021版本):

  1. 选定输出位置:点击一个空白单元格,比如 E2。这里将是我们神奇名单的起点。

  2. 输入“神器”公式:在 E2 单元格中,直接输入以下公式:

=UNIQUE(FILTER(A2:A16, COUNTIF(B2:B12, A2:A16)))

按确认键,即可得结果,如下图:

打开网易新闻 查看精彩图片

公式深度解读(从内到外看):

    • COUNTIF(B2:B12, A2:A16):这是核心判断。注意,这里的第二个参数 A2:A16 是一个整列区域。新版Excel允许COUNTIF进行“数组运算”,它会一次性判断A列每个单元格是否在B列区域中,生成一个由1(重复)和0(不重复)组成的数组 {0;0;1;0;...}

    • FILTER(A2:A16, ...)FILTER函数以这个“1/0数组”为筛选条件。它会从A2:A16中,只“筛出”那些对应条件为1(即非零,表示重复)的项,生成一个包含所有重复项的临时数组

    • UNIQUE(...):最后,UNIQUE函数对这个临时数组进行处理,移除其中可能存在的重复值(因为A列本身可能有重复,如“张伟”),最终生成一个唯一值列表

  1. 按下回车,公式结果从 E2 单元格自动“溢出”,向下填充了刚好够用的单元格(E2:E9),整齐地列出了所有不重复的重复姓名!

最终效果与优势:
现在,E列出现了一份完美的“重合客户”名单:去除了A列自身的重复,并且按原顺序排列整齐
最神奇的是,动态性

  • 如果你在A列或B列的原始数据中新增或修改一个姓名,只要它在两列中都出现,E列的名单会瞬间自动更新

  • 无需任何额外操作,公式结果区域(E2:E9)的大小也会根据结果自动调整。

重要提示:此方法为新版Excel(Office 365 / Excel 2021)专属功能,是未来Excel函数发展的方向,功能强大且简洁。

本篇End