用VBA检查EXCEL中两列数据的重复数据
我有一个EXCEL表,有两列数据,A列,B列,我想检查,A列中的数据,在B列中是否有存在,如果存在,那么在对话框中输出重复的数据,如果没有,那么用对话框输出不重复,用VB...
我有一个EXCEL表,有两列数据,A列,B列,我想检查,A列中的数据,在B列中是否有存在,如果存在,那么在对话框中输出重复的数据,如果没有,那么用对话框输出不重复,用VBA实现,最好加一个按扭
前面回答的代码,不能执行 展开
前面回答的代码,不能执行 展开
1个回答
展开全部
这个用2嵌套的循环来实现比对就可以了,A列第一个数据和B列第一个数据比对,
如果不重复就转到B列第二个,如果重复了就转到A列第二个,依次比对。大概十几句代码吧,添加一个按钮: (假定数据从第二行开始)
Private Sub CommandButton1_Click()
ROW_A = 2: ROW_B = 2
ENDROW_B = [A65536].End(xlUp).Row
Do While Cells(ROW_A, 1) <> ""
Do While Cells(ROW_B, 2) <> ""
If Cells(ROW_A, 1) = Cells(ROW_B, 2) Then
Cells(ROW_B, 2).Interior.ColorIndex = 6
MsgBox ("B" & ROW_B & "行出现重复")
Exit Do
Else: If ROW_B = ENDROW_B Then
Exit Do
Else: ROW_B = ROW_B + 1
End If :End If
Loop
ROW_A = ROW_A + 1
ROW_B = 2
Loop
End Sub
如果不重复就转到B列第二个,如果重复了就转到A列第二个,依次比对。大概十几句代码吧,添加一个按钮: (假定数据从第二行开始)
Private Sub CommandButton1_Click()
ROW_A = 2: ROW_B = 2
ENDROW_B = [A65536].End(xlUp).Row
Do While Cells(ROW_A, 1) <> ""
Do While Cells(ROW_B, 2) <> ""
If Cells(ROW_A, 1) = Cells(ROW_B, 2) Then
Cells(ROW_B, 2).Interior.ColorIndex = 6
MsgBox ("B" & ROW_B & "行出现重复")
Exit Do
Else: If ROW_B = ENDROW_B Then
Exit Do
Else: ROW_B = ROW_B + 1
End If :End If
Loop
ROW_A = ROW_A + 1
ROW_B = 2
Loop
End Sub
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询