如何使用 VLOOKUP 函数对比两个独立工作表中的列表?


假设您有两张工作表,每张都包含一个名称列表,如上图所示。您可能希望检查 Names-1 中的哪些名称也存在于 Names-2 中。手动执行此类比较(尤其是在处理长列表时)既繁琐又极易出错。本文将为您介绍几种高效方法,助您快速、准确地比较两个列表,并轻松找出不同工作表中的匹配项!
使用公式通过 VLOOKUP 比较两个独立工作表中的列表
比较位于不同 Excel 工作表中的列表,一种实用且直接的方法是使用 VLOOKUP 函数。该方法可高效提取或标记同时出现在 Names-1 和 Names-2 中的所有名称:
1. 在 Names-1 工作表中,选择紧邻列表数据的单元格(例如 )B2),然后输入以下公式:
=VLOOKUP(A2,'Names-2'!$A$2:$A$19,1,FALSE) 然后按 Enter。如果当前行中的名称存在于 Names-2 中,公式将返回该名称;否则会显示 #N/A 错误。如下例所示:

2. 通过拖动填充柄将公式向下复制,即可将 Names-1 中的每个名称与 Names-2 中的所有名称逐一比对:匹配项将显示对应名称,未找到的项则显示错误值:

注意事项:
1. 为更清晰地呈现匹配结果,您可以使用以下替代公式,以“是”或“否”明确指示:
=IF(ISNA(VLOOKUP(A2,'Names-2'!$A$2:$A$19,1,FALSE)), "No", "Yes") 该公式对两个工作表中都存在的名称显示“是”,仅在 Names-1 中出现的名称则显示“否”:

2. 使用这些公式时,请将 A2 替换为列表中的首个单元格,将 Names-2 替换为参考工作表的名称,并将 $A$2:$A$19 调整为实际的数据区域。请注意,区域的起止行必须设置正确,以确保完整包含所有数据。
3. 使用技巧:如果在应有匹配的位置出现 #N/A 错误,请仔细检查列表中是否存在多余空格、数据格式不一致(如文本与数字混用)或拼写错误。如有需要,可在辅助列中使用 TRIM 或 CLEAN 函数轻松清理数据。
4. 为避免意外覆盖,请在应用批量公式前先备份数据。此外,比较完成后,您可在公式结果列上使用筛选,快速查看所有匹配项或唯一项。
使用 VLOOKUP 比较两个独立工作表中的列表
如果您已安装 Kutools for Excel,只需几次点击,即可利用其选择相同/不同单元格功能,快速找出并高亮两个独立工作表中的相同项或不同值。此功能可显著降低手动操作出错的风险,尤其适用于大型数据集,助您大幅提升效率、节省宝贵时间!点击下载 Kutools for Excel!

Kutools for Excel:提供超过 300 个实用 Excel 加载项,30 天内免费试用,无任何限制。立即下载并免费试用!
使用 Kutools for Excel 通过 VLOOKUP 比较两个独立工作表中的列表
如果您已安装 Kutools for Excel,其选择相同/不同单元格功能可助您快速比对来自不同工作表的两个列表,并一键选中或高亮两张表中的共有名称——无需输入复杂公式。在处理大量数据或追求直观、彩色编码的可视化结果时,此方法尤为高效!
安装 Kutools for Excel 后,请按以下步骤轻松比较您的列表:
1. 转到 Kutools 选项卡,点击选择 > 选择相同/不同单元格,如下图所示:

2. 在打开的选择相同/不同单元格对话框中:
(1.) 在查找值范围下,选择要比较的 Names-1 区域;
(2.) 在根据下,选择用于比对的 Names-2 区域;
(3.) 在基于部分,选择逐行即可分别比较各行;
(4.) 在查找部分,选择相同值,即可识别并高亮匹配的名称;
(5.) 您还可以设置背景色或字体颜色,高亮显示匹配结果,让关键信息更醒目。

3. 单击确定后,系统将弹出提示框,显示已找到并高亮的匹配单元格数量。两个列表中都存在的所有名称将被自动选中并以视觉方式突出显示,便于您进一步审阅或修改:

实用技巧:如果您的工作表包含大型数据集,建议高亮后使用筛选功能,仅查看匹配项。此外,在运行比较前,请再次确认所选区域已正确对齐,且未包含标题行(除非有意包含),因为错位会影响结果准确性。
在极少数情况下,若该功能未返回预期结果,请检查两个列表是否采用相同格式(例如均为文本,且不含隐藏的前导或尾随空格),因为格式差异可能导致匹配项被遗漏。
使用条件格式跨工作表公式法
如果您不想在列中编写公式或使用插件,可以利用使用条件格式配合自定义公式,根据另一工作表的数据,在当前工作表中直观高亮匹配的名称。此方法简单直接、无需 VBA,虽不会生成单独的结果列表,但能通过格式化让匹配项一目了然。
适用场景:本方案适用于希望以非侵入式方式直观查看匹配值,且不希望改动工作表结构的用户。其局限性在于:条件格式规则无法直接引用其他工作簿,且公式跨表引用仅在同一个文件内有效。
操作步骤:
1. 在 Names-1 中,选择要应用高亮的区域(例如 )A2:A19)。
2. 转到开始 > 使用条件格式 > 新建规则 > 使用公式确定要设置格式的单元格。
3. 在公式框中输入以下公式:
=COUNTIF('Names-2'!$A$2:$A$19,A2)>0 此公式检查 Names-1 工作表中 A2 单元格的值是否存在于 Names-2!A2:A19 范围内。
4. 单击格式选择高亮颜色,再单击确定应用该规则,所有匹配项将自动在您的选定区域中高亮显示。
实用技巧:您可以根据实际数据调整范围,COUNTIF 步骤还能与筛选功能结合,仅聚焦于已高亮的单元格。设置跨工作表引用时,请确保两个工作表位于同一工作簿中,因为 Excel 的条件格式规则不支持引用外部文件。
错误提醒:如果高亮未按预期显示,请检查所选单元格范围及跨工作表引用是否正确。确保数据中不存在前导或尾随空格,以及格式不一致等问题,以免造成匹配遗漏。如有必要,可在辅助列中使用 TRIM 函数清理列表,实现精准比对。
VBA 代码 —— 自动比较列表并高亮或提取匹配项
对于熟悉宏的用户,使用 VBA 代码提供了一种高度灵活且自动化的解决方案,可高效比对两个独立工作表中的列表——不仅能高亮显示匹配的姓名,还能将匹配值提取至新位置,尤其适用于处理海量数据或需要在列表更新时快速同步结果的场景。
适用场景:当您需要重复执行比对、处理超大数据集、自动化生成报告,或进一步自定义匹配结果的处理与呈现方式时,此方案尤为高效。虽然需具备 VBA 知识,但您将获得完全的自动化能力与掌控权。唯一限制是工作簿中必须启用宏,而某些环境可能因安全设置禁止宏的使用。
如何运行宏以在 Names-1 中高亮显示 Names-2 中存在的匹配项:
1. 单击开发工具 > Visual Basic,打开 Microsoft Visual Basic for Applications 窗口;随后点击该窗口中的插入 > 模块,并将以下代码粘贴到新模块中:
Sub HighlightMatchingNames()
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim rng1 As Range
Dim cell As Range
Dim matchFound As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set ws1 = Worksheets("Names-1")
Set ws2 = Worksheets("Names-2")
Set rng1 = ws1.Range("A2", ws1.Cells(ws1.Rows.Count, "A").End(xlUp))
ws1.Range("A2:A" & ws1.Cells(ws1.Rows.Count, "A").End(xlUp).Row).Interior.ColorIndex = xlNone
For Each cell In rng1
Set matchFound = ws2.Range("A2:A" & ws2.Cells(ws2.Rows.Count, "A").End(xlUp).Row).Find( _
What:=cell.Value, LookIn:=xlValues, LookAt:=xlWhole)
If Not matchFound Is Nothing And cell.Value <> "" Then
cell.Interior.Color = vbYellow
End If
Next cell
End Sub 2. 在 VBA 编辑器中,单击
按钮运行代码。此宏将扫描“Names-1”工作表 A 列中的姓名,若某姓名同时出现在“Names-2”工作表的 A 列中,则会在“Names-1”中将该单元格以黄色填充高亮显示。执行新比对前,该范围内的先前高亮将被自动清除。
故障排除:若无单元格被高亮,请确认两个工作表名称是否精确为“Names-1”和“Names-2”,且数据区域从 A2 开始。请确保已启用宏,且两个工作表均未受保护或处于筛选状态。此方法易于自定义——例如,您可更改高亮颜色,或修改代码将匹配结果复制到其他工作表或列中。
总结与建议:根据您的需求和技术熟练程度,可选择内置公式、宏自动化、Kutools 等智能插件,或使用条件格式实现直观可视化。使用公式或 VBA 时,请务必检查数据中是否存在多余空格或格式不一致问题——这些是常见错误来源。首次通过宏或插件执行批量操作前,请务必备份数据。若遇到公式未更新或匹配错误等问题,请检查相对/绝对引用范围是否正确,并验证工作表名称。选择契合您工作流程的方法,即可在 Excel 中高效、精准地跨工作表比对列表!
最佳办公效率工具
| 🤖 | KUTOOLS AI 助手:基于以下内容革新数据分析:智能执行 | 生成代码| 创建自定义公式 | 数据分析及生成图表| 调用 Kutools Functions…… |
| 热门功能:查找、高亮或标记重复项 | 删除空白行 | 合并列或单元格且不丢失数据 | 不使用公式的四舍五入…… | |
| 高级 LOOKUP:多条件 VLookup | 多值 VLookup | 跨多工作表 VLookup | 模糊查找…… | |
| 高级下拉列表:快速创建下拉列表 | 级联下拉列表 | 多选下拉列表…… | |
| 列管理器:添加指定数量的列|移动列|切换隐藏列的可见性状态|比较区域与列…… | |
| 特色功能:网格聚焦 | 设计视图 |增强编辑栏 | 工作簿和表管理器 | 资源库(自动文本)| 日期提取 | 汇总工作表 | 加密/解密单元格 | 按列表发送邮件 | 超级筛选 | 特殊筛选(筛选粗体单元格/斜体/删除线……) ...... | |
| 精选 15 工具集:12 文本工具(添加文本,删除特定字符,……)| 50+ 图表 类型(甘特图,……)| 40+ 实用公式(基于生日计算年龄,……)| 19 插入工具(插入二维码,从路径插入图片,……)| 12 转换工具(小写金额转大写,汇率转换,……)| 7 合并和拆分工具(高级合并行,分割单元格,……)|……更多 |
使用 Kutools for Excel 大幅提升您的 Excel 技能,体验前所未有的高效。Kutools for Excel 提供 300 多项高级功能,助您提升生产力、节省时间。立即点击此处,获取您最需要的功能……
Office Tab 为 Office 带来标签式界面,让您的工作更轻松
- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑和阅读。
- 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中。
- 将您的工作效率提升 50%,每天减少数百次鼠标点击!
所有 Kutools 插件,一个安装程序
Kutools for Office 套件捆绑了适用于 Excel、Word、Outlook 和 PowerPoint 的插件以及 Office Tab Pro,非常适合需要跨多个 Office 应用高效协作的团队。
- 一体化套件— Excel、Word、Outlook 和 PowerPoint 插件 + Office Tab Pro
- 一个安装程序,一个许可证— 几分钟内完成设置(支持 MSI)
- 协同效果更佳— 在多个 Office 应用中实现高效协同
- 30 天全功能试用— 无需注册,无需信用卡
- 超值之选— 比单独购买插件更省钱