我想在工作表1中找到与工作表2匹配的特定值,并将该单元格变为黄色。我想在此代码中查找错误。
这是表1
table2
代码:
Option Explicit
Sub match1()
Dim wsSource As Worksheet
Dim wsTarget As Worksheet
Set wsSource = ThisWorkbook.Worksheets("Sheet1")
Set wsTarget = ThisWorkbook.Worksheets("Sheet2")
If wsSource("A2") = wsTarget("A1:B5") Then
wsSource("A2").Interior.Color = vbYellow
End If
If wsSource("A3") = wsTarget("A1:B5") Then
wsSource("A3").Interior.Color = vbYellow
End If
If wsSource("A4") = wsTarget("A1:B5") Then
wsSource("A4").Interior.Color = vbYellow
End If
If wsSource("A5") = wsTarget("A1:B5") Then
wsSource("A5").Interior.Color = vbYellow
End If
If wsSource("B2") = wsTarget("A1:B5") Then
wsSource("B2").Interior.Color = vbYellow
End If
If wsSource("B3") = wsTarget("A1:B5") Then
wsSource("B3").Interior.Color = vbYellow
End If
If wsSource("B4") = wsTarget("A1:B5") Then
wsSource("B4").Interior.Color = vbYellow
End If
If wsSource("B5") = wsTarget("A1:B5") Then
wsSource("B5").Interior.Color = vbYellow
End If
End Sub
答案 0 :(得分:0)
所有这样的代码行
If wsSource("A2") = wsTarget("A1:B5") Then
...应该是这样,
If application.countif(wsTarget.range("A1:B5"), wsSource.range("A2")) Then
实际上,条件格式设置规则可以基于相同的方法。
=and(countif('sheet2'!$A$1:$B$5, A1))