como eliminar filas duplicadas (o celdas) en version 2003?

17/02/2007 - 05:07 por casiopea | Informe spam
Tengo una hoja de 20,000 filas y contiene algunas filas duplicadas. Existe
la manera de eliminarlas sin tener que eliminarlas una a una. Esto es para
la version 2003 pues la 2007 ya trae eso resuelto.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
17/02/2007 - 07:46 | Informe spam
hola, ?

Tengo una hoja de 20,000 filas y contiene algunas filas duplicadas.
Existe la manera de eliminarlas sin tener que eliminarlas una a una.
Esto es para la version 2003 pues la 2007 ya trae eso resuelto.



existen varias formas [dependiendo de necesidades especificas] :))
la macro que expongo en seguida es [o 'debiera ser'] +/- rapidita, con alguna que otra 'ventaja' como:
-> no es 'relevante' si los datos estan ordenados o no
-> puedes modificar un solo 'dato' para la columna o fila 'de partida'
-> usa la funcion de hoja de calculo contar.si [no toma en cuenta si son mayusculas/minusculas]
si cualquier duda [o informacion adicional]... comentars?
saludos,
hector.

en un modulo de codigo 'estandar/general/normal' ==Sub Eliminar_Repetidos()
Dim Repetidos As Range, Col As String, F1 As Long, Fx As Long, Fila As Long
Col = "b"
F1 = 2
Fx = Range(Range(Col & F1), Range(Col & "65536").End(xlUp)).Rows.Count
For Fila = F1 To Fx + F1 - 1
If Application.CountIf(Range(Col & F1 & ":" & Col & Fila), Range(Col & Fila)) > 1 Then
If Repetidos Is Nothing Then Set Repetidos = Range(Col & Fila)
Set Repetidos = Union(Repetidos, Range(Col & Fila))
End If
Next
If Repetidos Is Nothing Then Exit Sub
Repetidos.EntireRow.Delete
Set Repetidos = Nothing
End Sub
Respuesta Responder a este mensaje
#2 casiopea
17/02/2007 - 15:54 | Informe spam
Mil gracias no te imaginas la ayuda que me has dado. Saludos.

"Héctor Miguel" escribió:

hola, ?

> Tengo una hoja de 20,000 filas y contiene algunas filas duplicadas.
> Existe la manera de eliminarlas sin tener que eliminarlas una a una.
> Esto es para la version 2003 pues la 2007 ya trae eso resuelto.

existen varias formas [dependiendo de necesidades especificas] :))
la macro que expongo en seguida es [o 'debiera ser'] +/- rapidita, con alguna que otra 'ventaja' como:
-> no es 'relevante' si los datos estan ordenados o no
-> puedes modificar un solo 'dato' para la columna o fila 'de partida'
-> usa la funcion de hoja de calculo contar.si [no toma en cuenta si son mayusculas/minusculas]
si cualquier duda [o informacion adicional]... comentars?
saludos,
hector.

en un modulo de codigo 'estandar/general/normal' ==> Sub Eliminar_Repetidos()
Dim Repetidos As Range, Col As String, F1 As Long, Fx As Long, Fila As Long
Col = "b"
F1 = 2
Fx = Range(Range(Col & F1), Range(Col & "65536").End(xlUp)).Rows.Count
For Fila = F1 To Fx + F1 - 1
If Application.CountIf(Range(Col & F1 & ":" & Col & Fila), Range(Col & Fila)) > 1 Then
If Repetidos Is Nothing Then Set Repetidos = Range(Col & Fila)
Set Repetidos = Union(Repetidos, Range(Col & Fila))
End If
Next
If Repetidos Is Nothing Then Exit Sub
Repetidos.EntireRow.Delete
Set Repetidos = Nothing
End Sub



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