检查另一个工作表中是否存在ID,如果不存在,则突出显示单元格并创建错误消息

时间:2019-07-18 20:18:38

标签: excel vba

我有一个名为“ 1099”的工作表,其中包含ID的列表(第B列)。我想检查那些ID是否在我的另一个名为“ PayerTab”(columnA)的工作表中存在。如果ID不在PayerTab上,我想在“ 1099”的A列中打印一条错误消息“ PayorID从列表中丢失”,并突出显示该单元格。

Sub Sample()
    Sheets("1099_Recipient_Template").Columns(1).ClearContents
    Dim lastRow As Integer
    Dim rng As Range
    lastRow = Sheets("1099-Misc_Form_Template").Cells(Rows.Count, 1).End(xlUp).Row

    For i = 2 To lastRow
        Set rng = Sheets("1099-Misc_Form_Template").Range("A:A").Find(Sheets("PayorTab").Cells(i, 1))
        If rng Is Nothing Then
            Sheets("1099-Misc_Form_Template").Cells(i, 1).Value = Value & ", Payor ID is not listed"
        End If
    Next
End Sub

1 个答案:

答案 0 :(得分:0)

如果您打算仅将突出显示的单元格用作参考,则可以尝试条件格式。记住值不是实际的单元格,而是值。

enter image description here 图片1:PayerTab

enter image description here 图片2:1099

  • 1099中的公式!A:A并向下拖动。

    =COUNTIF(PayerTab!A:A,'1099'!B1)
    
  • 设置1099!A:文本为白色

  • 1099的条件格式规则!A:A

    =$A1=0
    
  • 条件格式;填充颜​​色+文本颜色黑色+数字>自定义>“列表中缺少PayerID”

  • 按确定

请注意,由于我们在A列中使用了公式,因此您仍然可以在此列上进行过滤,以获取所有“ PayorID从列表中丢失”的单元格