En las lecciones anteriores hemos visto como eliminar elementos repetidos existentes en una misma fila. En este ejemplo realizaremos comparaciones entre diferentes columnas, eliminando de la primera los elementos que existan en la segunda.
En la primera columna están todos los elementos que forman parte de la lista y en la segunda columna se van colocando los elementos que se desean buscar para eliminar de la primera.
A continuación escribiremos la macro completa y después explicaremos que realiza cada una de las líneas. El número que aparece al principio de cada una de las líneas nos servirá como guía en la explicación, no debes copiarlos en el Editor.
1 Sub Repetidos()
2 Range("B1").Select
3 Posicion = 1
4 While ActiveCell.Value <> ""
5 valorcomparacion = ActiveCell.Value
6 Range("a1").Select
7 Salir = "no"
8 While ActiveCell.Value <> "" And Salir = "no"
9 If ActiveCell.Value = valorcomparacion Then
10 respuesta = MsgBox("¿Deseas borrar esta entrada?", 4, "¡¡Encontrado!!")
11 If respuesta = vbYes Then
12 Selection.Delete Shift:=xlUp
13 End If
14 Salir = "si"
15 Else
16 ActiveCell.Offset(1, 0).Range("A1").Select
17 End If
18 Wend
19 Posicion = Posicion + 1
20 Range("b1").Select
21 ActiveCell.Offset(Posicion - 1, 0).Range("a1").Select
22 Wend
23 End Sub
Antes de realizar la explicación tenemos que dejar muy claro que la columna A, será donde tenemos todos los datos de nuestra lista y la columna B, los datos que deseamos buscar y eliminar de la primera columna.