eliminar filas repetidas

04/07/2005 - 17:04 por Cambacito | Informe spam
Quiero eliminar filas repetidas sin dejar ninguna.
Todas las soluciones que vi eliminan las repetidas pero dejan una de
ellas.
Yo quiero eliminar todas sin dejar ninguna de las que se repiten. ¿Es
posible?
Gracias

Preguntas similare

Leer las respuestas

#1 Carlos Durán Urenda
04/07/2005 - 21:26 | Informe spam
Que tal, te doy una alternativa, aunque es "manual", posteriormente podrias
implementarla con codigo...


puedes utilizar la funcion CONTAR.SI, para determinar cuantas veces se
repite el dato, si se repite mas una vez puedes delvolver un valor de de
error (po hacerlo de alguna manera) y si no devolver un valor 0.

Suponiendo que los datos repetidos estan en la columna D
=SI(CONTAR.SI($D:$D,D1)>1,NOD( ),0)

posteriormente puedes seleccionar todos los resultados, y en el menú
Edicion / Ir A... / Especial

Seleccionas Formulas y dejas activado Errores, los demas los desactivas

ahora tienes seleccionado todas las celdas correspondientes a valores
repetidos, puedes ir a Edicion / Eliminar ... y seleccionas toda la fila


Saludos
Carlos Duran



"Cambacito" escribió en el mensaje
news:
Quiero eliminar filas repetidas sin dejar ninguna.
Todas las soluciones que vi eliminan las repetidas pero dejan una de
ellas.
Yo quiero eliminar todas sin dejar ninguna de las que se repiten. ¿Es
posible?
Gracias
Respuesta Responder a este mensaje
#2 KL
04/07/2005 - 21:56 | Informe spam
Hola Cambacito,

Suponiendo que quieres evaluar la columna [A] si contiene referncias
repetidas, prueba el siguiente macro ejecutandolo desde cualquier modulo VBA
y teniendo la hoja en cuestion activada.

Saludos,
KL


Sub test()
Dim seleccion As String
Dim c As String
Dim rng As Range

With Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
With ActiveSheet
c = "A"
Set rng = .Range(.Cells(2, c), _
.Cells(.Rows.Count, c).End(xlUp))
For Each celda In rng
If Application.CountIf(rng, celda) > 1 _
Or celda = "" Then
If seleccion <> "" Then _
seleccion = seleccion & ","
seleccion = seleccion & celda.Address
End If
Next celda
If seleccion <> "" Then _
.Range(seleccion).EntireRow.Delete
End With
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
End With
End Sub
Respuesta Responder a este mensaje
#3 Cambacito
05/07/2005 - 14:28 | Informe spam
Hola KL:
La macro funciona perfectamente. Es justo lo que buscaba.
Muchas gracias.

saludos
Cambacito
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida