因为EXCEL的数据行数比较多,有几千行。
所以想用快速的方法,查找某一列的数据,行与行之间是否有重复。
有什么方法吗?
------解决方案--------------------------------------------------------
'比较A列行与行之间是否有重复,有则将重复单元格变灰色
Dim index As Long '行号
Dim temp As String '当前单元格上一单元格值,作比较用
Dim strRangeA As String 'A列单元格
Dim strColor As Integer '颜色
temp = " "
strColor = 15
For index = 1 To 65536
strRangeA = "A " + CStr(index)
If Range(strRangeA).Value = " " Then
Exit Sub
End If
If temp = Range(strRangeA).Value Then
Range(strRangeA).Select
With Selection.Interior
.ColorIndex = strColor
.Pattern = xlSolid
End With
End If
temp = Range(strRangeA).Value
Next
------解决方案--------------------------------------------------------
不用VBA即可实现
用countif配合自动筛选
假设数据共9列(A~I)
第一行为标题行
其中A与C列为关键列
取J与K列为辅助列(列名分别为辅1 辅2)
在J2格写入公式 =A2 & C2
并填充J列(这一步用于生成对重复数据的识别列)
在K2格写入公式 =countif(J$2:J2,j2)
填充K列
此时K列中大于1的行都是重复行
打开自动筛选
选出大于1的行
全部删除
打完收工