Saltar al contenido
PROGRAMAR EN VBA MACROS DE EXCEL

Como Eliminar Datos Duplicados en Excel


(adsbygoogle = window.adsbygoogle || []).push({});

La Macro de Excel que se muestra permite Eliminar los Datos Duplicados de Columnas de Excel, es decir analizará una columna determinada en busca de datos duplicados, desde la primer a la última fila con datos, eliminando las filas que se encuentren duplicadas.

En este playlist se muestran diferentes maneras de Eliminar Filas de Excel en Base a Criterios.

Recomiendo leer un excelente libro sobre Excel que te ayudará operar las planillas u hojas de cálculo, haz click acá, si quieres aprender sobre Excel, en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores cursos on line que he visto en internet.

  
Suscribe a nuestro canal para que YouTube te avise cuando se suba nuevo contenido al canal, en el vídeo encontrarás una explicación gráfica y detallada del ejemplo que se muestra en este post.

function onYtEvent(payload) {
if (payload.eventType == ‘subscribe’) {
// Add code to handle subscribe event.
} else if (payload.eventType == ‘unsubscribe’) {
// Add code to handle unsubscribe event.
}
if (window.console) { // for debugging only
window.console.log(‘YT event: ‘, payload);
}
}

 
El ejemplo que se presenta es bastante sencillo, toma una columna determinada que en este caso es la Columna D de la Hoja1, verificando si los datos o la palabra contenida en cada celda está duplicada en el resto de celdas de la misma columna en caso afirmativo borra todas la filas duplicadas, dejando solamente datos únicos o sin duplicar.

En primer momento se determina la última fila con datos, para ello se usa el siguiente código:

uf = a.Range(«A» & Rows.Count).End(xlUp).Row

El código anterior permite determinar la última fila con datos, si requieres aprender mas sobre como determinar la última fila con dato haz clic en los siguientes links, como determinar la última fila con datos, como determinar la última fila con datos de una selección, como determinar la última fila con datos de un rango con filas vacías entre medio.

⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛

Quizá sea de utilidad también


Como Repetir un Mismo Caracter Varias Veces en Excel

Como Buscar Archivos en un Directorio y Hacer Link al Ficheros

Como eliminar el Boton X o Cerrar de un Formulario

Con el siguiente código se podrán eliminar los duplicados de las Hojas de Excel:

a.Range(«A1:G» & uf).RemoveDuplicates Columns:=4, Header:=xlYes

En primer lugar se determina donde se encuentran los datos, es decir el rango, para ello se determinó previamente cual era la última fila con datos, para ello se determinó cual era la última fila con datos, lo cual permite establecer un rango dinámico, es decir por más que se sigan agregando filas el rango se determinará automáticamente.

Al rango de datos se aplica el código que permite eliminar duplicados, entre los parámetros que se deben ingresar es donde se encuentra la columna, que permite determinar el criterio de duplicidad, en otras palabras se le debe decir a la macro, que criterio seguir para determinar si un dato es duplicado o no, en este ejemplo el criterio de duplicidad son todas las palabras iguales que estén en la Columa 4 o «D», en el código anterior se le indica que la columna D tiene encabezado por ende no tendrá en cuenta la primer fila.

El código completo está a continuación y posteriormente el link de descarga del archivo Excel de ejemplo denominado Como Eliminar Datos Duplicados en Excel.

Código que se inserta en un módulo

‘**************https://macrosenexcel.com  **** https://youtube.com/programarexcel*********

Sub EliminaDuplicado()

Application.ScreenUpdating = False

On Error Resume Next

Set a = Sheets(«Hoja1»)

uf = a.Range(«A» & Rows.Count).End(xlUp).Row

a.Range(«A1:G» & uf).RemoveDuplicates Columns:=4, Header:=xlYes

MsgBox («Los datos se elimnaron se éxito»), vbInformation, «AVISO»

Application.ScreenUpdating = True

End Sub

Sub DeNuevo()

Set a = Sheets(«Hoja1»)

uf = Range(«A» & Rows.Count).End(xlUp).Row

a.Range(«A1:G» & uf).Clear

Sheets(«Hoja2»).Range(«A:G»).Copy Destination:=a.Range(«A1»)

MsgBox («Se copio la base de datos nuevamente»), vbInformation, «AVISO»

End Sub

⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛

Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar en ejemplo en forma gratuita.


(adsbygoogle = window.adsbygoogle || []).push({});

If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.

Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends