需先按时间或序号降序排序,再用“删除重复项”保留每组首条(即最新记录);也可用高级筛选或Power Query按分组取最新。

如果您在Excel表格中需要去除重复数据,但希望保留每组重复项中最新的一条记录(例如按日期或序号判断“最新”),则必须先通过排序将最新记录置于重复组的末尾或开头,再执行删除重复值操作。以下是实现此目标的具体步骤:
一、按时间或序号列降序排序
该步骤确保每组重复数据中最新的一条记录排在最上方(若后续使用“高亮重复值”或“删除重复值”功能,默认保留上方首条),从而为后续保留最新记录奠定基础。排序依据应为能标识“新旧”的列,如“提交时间”“更新日期”或“ID序号”。
1、选中包含数据的整个区域(含标题行),或点击任意数据单元格后按Ctrl+A全选当前数据表。
2、切换到【数据】选项卡,点击【升序】或【降序】按钮旁的下拉箭头,选择【自定义排序】。
3、在排序对话框中,设置主要关键字为时间列或序号列,排序依据选择【数值】,次序选择降序(例如:日期由大到小,ID由高到低)。
4、勾选【数据包含标题】,点击【确定】完成排序。
二、使用“删除重复项”功能并指定关键列
Excel的“删除重复项”默认保留每组重复项中首次出现的记录。经上一步降序排序后,首次出现即为最新记录,因此该功能可直接用于保留最新值。需注意仅对判定重复逻辑所依赖的列进行勾选,避免误删。
1、再次选中全部数据区域(含标题行)。
2、在【数据】选项卡中点击【删除重复项】。
3、在弹出窗口中,取消勾选所有列,然后仅勾选用于识别重复的列(例如:“姓名”“手机号”“产品编号”等业务主键字段)。
4、确认勾选【数据包含标题】,点击【确定】。
5、Excel将提示删除重复项数量及剩余唯一项数,点击【确定】完成操作。
三、使用高级筛选保留最后出现的重复项
当“删除重复项”无法满足“保留最后一条”需求(例如原始顺序不可更改、或需非破坏性提取),可借助高级筛选功能,配合辅助列标记最后出现位置。该方法不修改原数据,仅生成新结果区域。
1、在空白列(如Z列)插入辅助公式:假设去重依据为A列(姓名)和B列(手机号),在Z2输入公式:=COUNTIFS(A:A,A2,B:B,B2,A$2:A2,A2,B$2:B2,B2),向下填充至末尾。
2、该公式统计当前行在相同AB组合中是第几次出现;最大值即为该组合最后一次出现的位置。
3、另起一列(如AA列),在AA2输入公式:=IF(Z2=MAXIFS(Z:Z,A:A,A2,B:B,B2),1,0),向下填充;结果为1的行即为每组最新记录。
4、选中数据区域 → 【数据】→【高级筛选】→ 选择【将筛选结果复制到其他位置】→ 列表区域选全部数据 → 条件区域选AA列中值为1的单元格区域(如AA1:AA1000)→ 复制到指定位置。
四、Power Query中按分组取最新记录
适用于大数据量、需复用逻辑或动态更新的场景。Power Query支持按多列分组后,对每组内记录按时间列排序并取第一行(降序后取Top1即为最新),全程可视化且无损原始表。
1、选中数据区域 → 【数据】→【从表格/区域】→ 勾选【表包含标题】→ 点击【确定】进入Power Query编辑器。
2、选中用于判定重复的列(如“姓名”“手机号”),右键选择【分组依据】。
3、在分组窗口中,新列名填“Grouped”,操作选【所有行】,点击【确定】。
4、点击新列“Grouped”右侧的展开图标 → 取消勾选【使用原始列名作为前缀】→ 勾选【姓名】【手机号】【提交时间】【其他必要字段】→ 点击【确定】。
5、选中“提交时间”列 → 【转换】→【降序】;再选中该列 → 【转换】→【按列排序】→ 选择【降序】→ 【关闭并上载】。
6、回到Excel,右键查询结果表 → 【查询选项】→ 设置【刷新时清除未使用的单元格】,确保每次刷新自动更新最新记录。










