Limpiar registros en excel

Buenos Días, necesito hacer una limpieza en una tabla de excel marcando registros que ya están en otra tabla para evitar enviar información duplicada. Me explico.
Se trataría de crear una macro para localizar y marcar todos los registros de una tabla que ya existen en la otra, en base al campo TELÉFONO de la TABLA1 localizar ese teléfono en la TABLA2 y si se encuentra marcar toda la fila de la TABLA2 con un color de fondo por ejemplo en lugar de eliminarla.
Muchas Gracias,
Respuesta
1
Te propongo el siguiente código. Estoy suponiendo que:
-
1. Las tablas son verdaderas tablas, es decir, que las creaste con el procedimiento regular para crearlas.
2. El campo del teléfono es el primero.
-
Sub DUPICADOS()
Dim TBL1 As Range
Dim TBL2 As Range
Dim TELEFONO1 As Range
Dim TELEFONO2 As Range
Dim CAMPOtel1 As Integer
Dim CAMPOtel2 As Integer
 Set TBL1 = Range("TABLA1")
 Set TBL2 = Range("TABLA2")
 CAMPOtel1 = 1
 CAMPOtel2 = 1
 For Each TELEFONO1 In TBL1.Rows
  For Each TELEFONO2 In TBL2.Rows
   If TELEFONO2.Columns(CAMPOtel2) = TELEFONO1.Columns(CAMPOtel1).Value Then
    TELEFONO2.Interior.Color = RGB(125, 125, 125)
   End If
  Next TELEFONO2
 Next TELEFONO1
End Sub
-
En caso de que la columna de teléfono de alguna tabla no sea la primera, cambia el valor por el que corresponda en las variables: CAMPOtel1 Y CAMPOtel2
-
También prueba cambiar el color con distintas combinaciones de Rojo Verde y Azul, dentro de la función RGB()
-

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas