Excel 365按条件合并单元格颜色编码并删除重复图纸号行的方法
Excel 365 图纸号去重+颜色编码合并实现方案
全程使用Excel内置功能,无需编写自定义代码,3000行数据操作耗时不超过5分钟。
前置准备
- 先完整备份原始数据表,避免操作失误丢失数据
- 确认三列表头分别为:
图纸号(A列)、修订号(B列,需设置为数字格式)、颜色编码(C列) - 数据区域为第2行到第3001行(共3000行有效数据)
步骤1:排序确定最高修订号优先级
选中全表数据区域,点击顶部「数据」选项卡→「排序」,按以下规则设置:
- 第一关键字:
图纸号,排序依据「值」,次序「升序」 - 第二关键字:
修订号,排序依据「值」,次序「降序」
点击确定后,同一图纸号的所有行中,修订号最高的行将排在最上方。若存在多个相同最高修订号的行,排在最上方的行将作为后续保留的基准行。
步骤2:标记最高修订号行
新增D列,表头设为是否最高修订行,在D2单元格输入公式:=IF(A2=A1,0,1)
下拉填充到D3001,此时同一图纸号仅排在最上方的最高修订号行标记为1,其余重复行标记为0。
步骤3:合并同图纸号去重颜色编码
新增E列,表头设为合并后颜色编码,在E2单元格输入公式:=TEXTJOIN(", ",TRUE,UNIQUE(TEXTSPLIT(TEXTJOIN(", ",TRUE,FILTER($C$2:$C$3001,$A$2:$A$3001=A2)),", ",,TRUE)))
下拉填充到E3001,该公式会自动提取同一图纸号的所有颜色编码,拆分后去重,再用英文逗号拼接为符合要求的格式。
步骤4:提取最终结果
- 选中D、E两列,右键选择「复制」,再次右键选择「粘贴为值」,避免后续操作公式变动
- 点击「数据」选项卡→「筛选」,点击D列筛选箭头,仅勾选
1,确定后页面将只显示所有图纸号的最高修订号行 - 复制筛选后的所有行,粘贴到新工作表中,删除原D列
是否最高修订行和原C列颜色编码,将E列合并后颜色编码调整为C列,即为最终符合要求的结果。
结果验证
可随机抽取3-5个原表存在重复的图纸号,核对以下规则:
- 每个图纸号仅保留1行
- 保留行的修订号为该图纸号的最高值
- 颜色编码包含该图纸号所有行的不重复颜色值,无遗漏无重复
内容的提问来源于stack exchange,提问作者jrock 9430
相关产品推荐
相关产品推荐

