Cuando trabaja con una tabla de datos grande, no es raro que la tabla contenga lo que es esencialmente información duplicada. Para procesar la información de la tabla, es posible que desee eliminar cualquiera de las filas que considere duplicadas, reduciendo así la cantidad de información que necesita procesar.

Por ejemplo, digamos que la primera celda de cada fila contiene un número de pieza. ¿Qué sucede si desea eliminar cualquier fila que tenga números de pieza duplicados en la primera celda? Si necesita esta solución, la siguiente macro es para usted:

Sub DelDupRows()

Dim rngSrc As Range     Dim NumRows As Integer     Dim ThisRow As Integer     Dim ThatRow As Integer     Dim ThisCol As Integer     Dim RightCol As Integer     Dim J As Integer, K As Integer

Application.ScreenUpdating = False     Set rngSrc = ActiveSheet.Range(ActiveWindow.Selection.Address)



NumRows = rngSrc.Rows.Count     ThisRow = rngSrc.Row     ThatRow = ThisRow + NumRows - 1     ThisCol = rngSrc.Column     RightCol = ThisCol + rngSrc.Columns.Count - 1

'Start wiping out duplicates     For J = ThisRow To (ThatRow - 1)

If Cells(J, ThisCol) > "" Then             For K = (J + 1) To ThatRow                 If Cells(J, ThisCol) = Cells(K, ThisCol) Then                     Cells(K, ThisCol) = ""

End If             Next K         End If     Next J

'Remove rows with empty key cells     For J = ThatRow To ThisRow Step -1         If Cells(J, ThisCol) = "" Then             Range(Cells(J, ThisCol), _               Cells(J, RightCol)).Delete xlShiftUp         End If     Next J     Application.ScreenUpdating = True End Sub

La macro funciona en una selección que realiza antes de llamarla. Por lo tanto, si necesita eliminar filas duplicadas del rango D7: G85, simplemente seleccione ese rango y luego ejecute la macro. Elimina los duplicados del rango D7: D85 y luego elimina todas las filas en D7: G85 (cuatro columnas por fila) para las que la celda de la columna D está en blanco.

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.

link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (2108) se aplica a Microsoft Excel 97, 2000, 2002 y 2003.