Hola, ojala y me pudieran ayudar, quiero eliminar registros repetidos de una hoja de excel, lo que pasa es que hay más 20 mil registros, ¿cómo le puedo hacer? Creo que a lomjor haciendo una macro pero desconozco como programarla Gracias
1 respuesta
Respuesta de fejoal
1
1
fejoal, Por falta de tiempo para responder como me gusta hacerlo suspendo...
Deberías ingresar este código en un módulo de Visual Basic (Presiona Alt + F11 para activar el Editor de VBA y, allí, elige "Insertar", "Módulo") Pega este código allí: Sub FixDuplicateRows() Dim RowNdx As Long Dim ColNum As Integer ColNum = Selection(1).Column For RowNdx = Selection(Selection.Cells.Count).Row To _ Selection(1).Row + 1 Step -1 If Cells(RowNdx, ColNum).Value = Cells(RowNdx - 1, ColNum).Value Then Cells(RowNdx, ColNum).Value = "Dup" End If Next RowNdx End Sub Cierra el editor de visula basic y, antes de ejecutarlo, guarda tu archivo. (Por si notas un error). Esta macro efectivamente eliminará las líneas donde los contenidos de las celdas estén duplicadas Previamente deberás tener ordenada la base por la celda de criterio para eliminar. Si tuviera que considerar más de una celda en un linea para determinar si está duplicado, te recomiendo concatenarlas (función =CONCATENAR) en una columna auxiliar y ordenarla por esta columna. Luego debes seleccionar desde la primer celda hasta la última de tu base en esta columna de criterio. Ejecuta la macro DELEDUP y el resultado será una lista de registros únicos (depurada). Recuerda grabar antes de ejecutar la macro. Si solo fueran datos (= sin fórmulas) una opción es exportar la base a Access, que cuenta con una consulta para hallar duplicados. Una vez allí los eliminas y lo vuelves a exportar a Excel. Personalmente prefiero la opción de la macro anterior. Bueno, espero que te sirva. Nos vemos (Cuando vuelva de mis vacaciones) Fernando