在VBA中具有相同值的2个单元的比较返回错误的输出

时间:2017-03-15 14:16:38

标签: excel vba compare cells

所以我有这个代码列出了所有工作表,并将第2行中的单元格与第11行中的单元格进行比较。如果它们不匹配,则将其颜色更改为红色:

Dim tbl As ListObject
Dim sht As Worksheet
Dim i As Integer

 'Loop through each sheet and table in the workbook
For Each sht In ThisWorkbook.Worksheets

  For i = 1 To 1000
    If sht.Cells(1, i) <> vbNullString Then
        If sht.Cells(2, i).Value = sht.Cells(11, i).Value Then
            sht.Cells(2, i).Interior.Color = xlNone
            sht.Cells(11, i).Interior.Color = xlNone
        Else
            sht.Cells(2, i).Interior.Color = RGB(255, 0, 0)
            sht.Cells(11, i).Interior.Color = RGB(255, 0, 0)

        End If
    Else
        Exit For
    End If

 Next i

然而,在一个标签中,它也会为一些匹配的单元格着色。我比较的数据是导出的csv。如果我手动重写比较单元格的值并运行代码,结果是正确的。细胞的形成在两行中都是通用的。任何想法如何解决这个问题?

enter image description here

0 个答案:

没有答案