eliminar filas repetidas segun condición
Publicado por liliana (18 intervenciones) el 20/03/2013 23:19:19
Hola buen día
Agradezco mucho la colaboración que siempre me han brindado, esta vez vuelvo con una pregunta.
1.Necesito eliminar de una tabla las filas que se encuentran repetidas, y solo dejar un dato de estos.
2. Hay 1 dato que es la palabra vació que se repite varias veces en la tabla y este no necesito eliminarlo.
Tengo una macro que utilice de internet que elimina las filas repetidas con un count if (ya que es mayor a 1), pero tambien me elimina las que dicen vacio y estas necesito dejarlas
Adjunto el código, i
Intente colocar: antes de empezar la cuenta de los repetidos quise que entrara a verificar si era diferente a vacio para que empiece si es diferente entre al ciclo coun if y ahi si borrar pero se queda trabado el ciclo.
Agradezco muchisimo su ayuda
Agradezco mucho la colaboración que siempre me han brindado, esta vez vuelvo con una pregunta.
1.Necesito eliminar de una tabla las filas que se encuentran repetidas, y solo dejar un dato de estos.
2. Hay 1 dato que es la palabra vació que se repite varias veces en la tabla y este no necesito eliminarlo.
Tengo una macro que utilice de internet que elimina las filas repetidas con un count if (ya que es mayor a 1), pero tambien me elimina las que dicen vacio y estas necesito dejarlas
Adjunto el código, i
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Const intNúmCol As Integer = 3
'Se procesará la columna c
Sub BorrarDuplicados()
Dim wksH As Worksheet
Dim lngContFila As Long
Set wksH = Worksheets("Hoja1") 'Hoja que se procesará
lngContFila = 12 'fila desde la cual se desea evaluar los datos repetidos
While Not IsEmpty(wksH.Cells(lngContFila, intNúmCol))
If Application.WorksheetFunction.CountIf(wksH.Columns(intNúmCol), wksH.Cells(lngContFila, intNúmCol)) > 1 Then
wksH.Cells(lngContFila, intNúmCol).EntireRow.Delete
Else
lngContFila = lngContFila + 1
End If
Wend
Set wksH = Nothing
End Sub
Intente colocar: antes de empezar la cuenta de los repetidos quise que entrara a verificar si era diferente a vacio para que empiece si es diferente entre al ciclo coun if y ahi si borrar pero se queda trabado el ciclo.
1
2
For filas 12 to 40 then
If Cells(fila, 3).Value <> vacio Then
Agradezco muchisimo su ayuda
Valora esta pregunta


0