我一直在尝试编写一个代码,用于比较两个相同大小的表中的值,并突出显示不匹配的值。我想出的代码似乎只是突出显示该范围的最后一个单元格。我想我在这里忽略了一些非常简单的事情。任何帮助解决这个问题将非常感激。我正在记下下面的代码。
Sub Compare_Table()
Dim oldTable As Range, newTable As Range, i As Integer, j As Integer, m As Integer, n As Integer
Set oldTable = Application.InputBox(Prompt:="Please Select old values", Title:="Range Select", Type:=8)
Set newTable = Application.InputBox(Prompt:="Please Select new values", Title:="Range Select", Type:=8)
i = oldTable.Rows.Count
j = oldTable.Columns.Count
For m = 1 To i
For n = 1 To j
If oldTable.Cells(i, j) = newTable.Cells(i, j) Then
newTable.Cells(i, j).Interior.ColorIndex = 6
Else
newTable.Cells(i, j).Interior.ColorIndex = 3
End If
Next n
Next m
End Sub
答案 0 :(得分:0)
在for循环中进行以下更改:
For m = 1 To i
For n = 1 To j
If oldTable.Cells(m, n) = newTable.Cells(m, n) Then
newTable.Cells(m, n).Interior.ColorIndex = 6
Else
newTable.Cells(m, n).Interior.ColorIndex = 3
End If
Next n
Next m