Macro para eliminar los valores duplicados, tanto el valor único y la copia

En la cual crear una macro y me pueda eliminar los duplicados; por ejemplo:

Manzana

Pera

Fresa

Durazno

Manzana

Al identificar los duplicados, me elimine ambos valores y me quede así:

Pera

Fresa

Durazno

1 Respuesta

Respuesta
1

H o l a:

Te anexo la macro. Pon tus datos están en la columna A, en la columna B quedarán los únicos.

Sub EliminarDuplicados()
'Por.Dante Amor
    j = 1
    u = Range("A" & Rows.Count).End(xlUp).Row
    Columns("B").ClearContents
    For i = 1 To u
        res = WorksheetFunction.CountIf(Range("A1:A" & u), Cells(i, "A"))
        If res = 1 Then
            Cells(j, "B") = Cells(i, "A")
            j = j + 1
        End If
    Next
    MsgBox "Fin"
End Sub

Sigue las Instrucciones para un botón y ejecutar la macro

  1. Abre tu libro de Excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. En el menú elige Insertar / Módulo
  4. En el panel del lado derecho copia la macro
  5. Ahora para crear un botón, puedes hacer lo siguiente:
  6. Inserta una imagen en tu libro, elige del menú Insertar / Imagen / Autoformas
  7. Elige una imagen y con el Mouse, dentro de tu hoja, presiona click y arrastra el Mouse para hacer grande la imagen.
  8. Una vez que insertaste la imagen en tu hoja, dale click derecho dentro de la imagen y selecciona: Tamaño y Propiedades. En la ventana que se abre selecciona la pestaña: Propiedades. Desmarca la opción “Imprimir Objeto”. Presiona “Cerrar”
  9. Vuelve a presionar click derecho dentro de la imagen y ahora selecciona: Asignar macro. Selecciona: EliminarDuplicados
  10. Aceptar.
  11. Para ejecutarla dale click a la imagen.

':)
':)

¡Gracias! Me sirvió mucho, me podría decir como haría para que la respuesta sea en la misma Columna "A"

Podría ser así:

Sub EliminarDuplicados()
'Por.Dante Amor
    j = 1
    u = Range("A" & Rows.Count).End(xlUp).Row
    Columns("B").ClearContents
    For i = 1 To u
        res = WorksheetFunction.CountIf(Range("A1:A" & u), Cells(i, "A"))
        If res = 1 Then
            Cells(j, "B") = Cells(i, "A")
            j = j + 1
        End If
    Next
    Columns("A").Delete
    MsgBox "Fin"
End Sub

sal u dos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas