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

如何批量高亮Sheet2中与Sheet1无匹配的序列号所在行

Excel批量标记无匹配序列号行的简便方法

方法一:条件格式(无需代码,设置后自动生效)

  • 打开Sheet2,选中所有需要检查的行(直接拖选行号区域,或选中数据所在的全部行)
  • 点击「开始」选项卡 → 「条件格式」→ 「新建规则」
  • 选择「使用公式确定要设置格式的单元格」,输入公式:=COUNTIF(Sheet1!$C:$C, $E1)=0(公式里的$E1对应Sheet2存序列号的E列,若列变更需修改字母)
  • 点击「格式」→ 「填充」选项卡选红色,确定后保存规则即可。之后Sheet2里只要E列序列号在Sheet1的C列找不到匹配,整行会自动变红

方法二:VBA宏(适合重复执行的场景)

  • 按下Alt + F11打开VBA编辑器
  • 右键点击工作簿名称 → 「插入」→ 「模块」
  • 粘贴以下代码:
Sub MarkUnmatchedRows()
    Dim ws1 As Worksheet, ws2 As Worksheet
    Dim rng1 As Range, rng2 As Range, cell As Range
    
    Set ws1 = ThisWorkbook.Sheets("Sheet1")
    Set ws2 = ThisWorkbook.Sheets("Sheet2")
    '只取两列中有内容的单元格,提升运行效率
    Set rng1 = ws1.Range("C:C").SpecialCells(xlCellTypeConstants)
    Set rng2 = ws2.Range("E:E").SpecialCells(xlCellTypeConstants)
    
    '清除之前的红色标记
    ws2.UsedRange.Interior.ColorIndex = xlNone
    
    '遍历Sheet2的E列,无匹配则整行标红
    For Each cell In rng2
        If IsError(Application.Match(cell.Value, rng1, 0)) Then
            cell.EntireRow.Interior.Color = vbRed
        End If
    Next cell
End Sub
  • 按下F5运行宏,也可给宏设置快捷键,后续一键就能完成标记

内容的提问来源于stack exchange,提问作者Cole Snody

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 19:49:51