enter image description here我今天在D栏中有数据,我希望与第F栏中的昨天数据进行比较。
以下是我用来比较和突出重复的代码。
A)突出显示我不想要的空白单元格。 B)我想处理一些例外情况,例如我不想突出显示$ 0.00或特定文字“无数据”
Sub CompareAndHighlight()
Dim Myrng1 As Range, Myrng2 As Range, i As Long, j As Long
Application.ScreenUpdating = False
For i = 3 To Sheets("Sheet1").Range("D" & Rows.Count).End(xlUp).Row
Set Myrng1 = Sheets("Sheet1").Range("D" & i)
For j = 3 To Sheets("Sheet1").Range("F" & Rows.Count).End(xlUp).Row
Set Myrng2 = Sheets("Sheet1").Range("F" & j)
If StrComp(Trim(Myrng1.Text), Trim(Myrng2.Text), vbTextCompare) = 0 Then
'If Myrng1.Value = Myrng2.Value Then
Myrng1.Interior.Color = RGB(255, 255, 0)
End If
Set Myrng2 = Nothing
Next j
Set Myrng1 = Nothing
Next i
Application.ScreenUpdating = True
End Sub
Data giving random errors在清除突出显示的颜色后多次运行宏。
答案 0 :(得分:0)
使用条件格式化功能。
Columns("A:A").Select
Selection.FormatConditions.AddUniqueValues
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
Selection.FormatConditions(1).DupeUnique = xlDuplicate
With Selection.FormatConditions(1).Font
.Color = -16383844
.TintAndShade = 0
End With
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 13551615
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
然后在此之后创建一个遍历您的范围的循环并将单元格的颜色转换为满足条件的颜色,或者您可以只过滤数据以排除您的情况,例如“无数据”,以及将结果复制并粘贴到新列中。事实上,你真的不需要vba。
答案 1 :(得分:0)
坚持使用VBA,您可以尝试以下代码:
while