比较两列与ID

我正在比较两列A和B.列A和B包含来自数据库的ID。

身份证是13位数字,但大多数情况下他们是11位数字。

  1. 情况1:如果列A有一个ID ABC02369000,列B有一个ID ABC02369000,结果是匹配的。
  2. 情况2:如果列A有一个ID ABC14285500,列B有一个ID ABC1428550000,结果仍然匹配。
  3. 案例3:如果列A的ID为ABC15184200,列B的ID为ABC15144200,则结果不匹配。

我想有一个这个标准的代码。 如果匹配,则突出显示为绿色,否则显示为红色。

我已经尝试了条件格式。 我会很高兴,如果我可以在代码中。

Sub RangeTest() Dim targetWorksheet As Worksheet Dim i As Long Dim totalrows As Integer For i = 2 To 112 Set targetWorksheet = Worksheets("Preparation sheet") With targetWorksheet Cells(i, 3) = IIf(Cells(i, 1) = Cells(i, 2), "Yes", "NO") Cells(i, 3).Interior.Color = IIf(Cells(i, 3) = "Yes", RGB(0, 255, 0), RGB(255, 0, 0)) End With Next End Sub 

试试下面的代码:

 Option Explicit Sub RangeTest() Dim targetWorksheet As Worksheet Dim i As Long Dim totalrows As Integer For i = 2 To 112 Set targetWorksheet = Worksheets("Preparation sheet") With targetWorksheet If Left(.Cells(i, 1), 11) = Left(.Cells(i, 2), 11) Then .Cells(i, 3) = "Yes" .Cells(i, 3).Interior.Color = RGB(0, 255, 0) Else .Cells(i, 3) = "NO" .Cells(i, 3).Interior.Color = RGB(255, 0, 0) End If End With Next i End Sub