如何在Excel中对比两个不同列筛选出不匹配的唯一MD5值
方法1:辅助列函数法(操作门槛低,适合小数据量)
你可以按以下步骤操作:
- 先把服务器的文件名、哈希值放在A、B列,终端的文件名、哈希值放在D、E列,首行设为表头。
- 在C列(表头填「匹配终端哈希」)第二行输入公式:
=IFERROR(VLOOKUP(A2,D:E,2,0),"终端无此文件"),下拉填充所有服务器数据行。该公式会自动匹配和当前服务器文件名一致的终端哈希,匹配不到就返回缺失提示。 - 在F列(表头填「匹配服务器哈希」)第二行输入公式:
=IFERROR(VLOOKUP(D2,A:B,2,0),"服务器无此文件"),下拉填充所有终端数据行。 - 在G列(表头填「是否异常」)第二行输入公式:
=IF(OR(C2="终端无此文件",F2="服务器无此文件",C2<>B2,F2<>E2),"是","否"),只要满足「单侧文件缺失」或「同名文件哈希不同」任一条件,就会标记为异常。 - 最后筛选G列值为「是」的行,即可得到你需要的所有不匹配条目。
方法2:Power Query合并比对(适合大数据量、需重复比对的场景)
如果你的文件条目过万,用函数运算较慢,可以用Power Query工具:
- 分别把服务器、终端的文件名+哈希数据导入Power Query(点击「数据」选项卡→「从表格/区域」即可导入)。
- 选择「合并查询」,合并依据选两表的文件名列,联接种类选择「完全外部(保留两个表的所有行)」。
- 展开合并后的终端数据列,直接筛选掉「双侧文件名存在且哈希相同」的行,导出到Excel就得到目标结果。
内容的提问来源于stack exchange,提问作者francisco.l
相关产品推荐
相关产品推荐

