You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无脚本实现:筛选旧会员表中已离职人员至新表

用函数筛选旧会员表中已离职的会员

一、将离职会员数据提取到Sheet3

假设Sheet1的会员编号在A列,全量数据范围为Sheet1!A:Z;Sheet2的最新会员编号在A列,范围为Sheet2!A:A。在Sheet3的A2单元格输入以下函数:

=FILTER(Sheet1!A:Z, ISNA(MATCH(Sheet1!A:A, Sheet2!A:A, 0)))

函数说明:

  • MATCH(Sheet1!A:A, Sheet2!A:A, 0):逐个匹配Sheet1的会员编号是否存在于Sheet2的最新列表中,存在返回对应行号,不存在返回#N/A
  • ISNA(...):将#N/A转换为TRUE,匹配成功的结果转换为FALSE,以此标记出离职会员
  • FILTER(...):提取Sheet1中所有标记为TRUE的整行数据,自动填充到Sheet3

如果使用无FILTER函数的旧版Excel,可在Sheet3的A2单元格输入数组公式(输入后按Ctrl+Shift+Enter确认),再向右、向下拖动填充:

=INDEX(Sheet1!A:Z, SMALL(IF(ISNA(MATCH(Sheet1!A$2:A$1000, Sheet2!A$2:A$1000, 0)), ROW(Sheet1!A$2:A$1000)-1, ""), ROW(A1)), COLUMN(A1))

注:将公式中的1000替换为Sheet1实际的最大数据行号

二、在Sheet1标记可删除的离职会员行

在Sheet1的空白辅助列(例如Z列)的Z2单元格输入:

=IF(ISNA(MATCH(A2, Sheet2!A:A, 0)), "已离职", "")

向下拖动填充后,所有标记为已离职的行即为需要删除的会员数据,可通过筛选功能批量删除。

关于之前函数使用失败的补充

你尝试的QUERY函数可按以下写法调整(需确保会员编号无正则特殊字符,如*、?):

=QUERY(Sheet1!A:Z, "SELECT * WHERE NOT A MATCHES '"&TEXTJOIN("|", TRUE, Sheet2!A:A)&"'", 1)

VLOOKUP单独使用无法直接筛选整行,需结合ISNA、IF等函数配合数组公式实现,不如FILTER简洁直观。

内容的提问来源于stack exchange,提问作者Gauweed International

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 23:20:33