我需要突出显示 Excel 2013 工作表中的重复行。我可以使用“突出显示 --> 重复”方法突出显示行中的重复单元格值,但我试图做的是突出显示重复的行。如果该行只有一个单元格不同,那么在我的情况下它不被视为重复。
例子:
Name Task Phone Number
A Do 1 12345
B Do 1 12345
A Do 2 12345
B Do 1 12345
对于上表,仅应突出显示第 2 行和第 4 行。
答案1
你要求突出显示行,但我猜这可能有问题(尽管你没有描述为什么你想要这样做)。假设你有 10 行,其中许多行与其他行匹配,你的工作表将如下所示
问题是您不知道哪一行与哪一行匹配!
当您下次运行脚本时,您仍然会遇到这个问题,突出显示将持续存在。
因此,我提供了一个带有额外信息列的解决方案(下面的屏幕截图):
Sub WalkThePlank()
Dim startRow As Integer
startRow = 2 'Update this to lead us to the treasure
Dim row As Integer
row = startRow
Do While (Range("A" & row).Value <> "")
Dim innerRow As Integer
innerRow = row + 1
Dim name As String
Dim task As String
Dim phone As String
name = Range("A" & row).Value
task = Range("B" & row).Value
phone = Range("C" & row).Value
Do While (Range("A" & innerRow).Value <> "")
If (Range("A" & innerRow).Value = name And Range("B" & innerRow).Value = task And Range("C" & innerRow).Value = phone) Then
Range("D" & row).Value = Range("D" & row).Value & innerRow & ", "
Range("D" & innerRow).Value = Range("D" & innerRow).Value & row & ", "
'Rows(row).Interior.ColorIndex = 6 'UNCOMMENT THIS LINE IF YOU WANT HIGHLIGHTING
'Rows(innerRow).Interior.ColorIndex = 6 'UNCOMMENT THIS LINE IF YOU WANT HIGHLIGHTING
End If
innerRow = innerRow + 1
Loop
row = row + 1
Loop
End Sub
这就是它的作用
在文件副本上执行此操作 - 没有撤消功能!
请注意,代码中有两行显示要取消注释哪一行(删除'
这些行中的第一行,它们就会突出显示)