1
Seleccione las columnas de datos que desea comparar las filas duplicadas. Por ejemplo, si desea comprobar la columna A para las filas duplicadas, haga clic en " A. "
2
Abra el VBE con la tecla " Alt" y " F11 ", junto con el teclado . Esto abre la ventana de VBE .
3
Haga clic en "Abrir " y luego haga clic en " módulos". Una ventana en blanco se abrirá en el VBE .
4
corte y pegue el siguiente código en la ventana en blanco en el paso 3 :
DeleteDuplicateRows Public Sub ( ) ' DeleteDuplicateRows
R As LongDim N Como LongDim V Como VariantDim Rng como gama
On Error GoTo EndMacroApplication.ScreenUpdating = FalseApplication.Calculation = xlCalculationManual
Set Rng = Application.Intersect ( ActiveSheet.UsedRange , _ActiveSheet.Columns ( ActiveCell.Column ))
Aplicación . StatusBar = " Fila de ejecución: " & Format ( Rng.Row , "# , # # 0 " )
N = 0For R = Rng.Rows.Count Para 2 Paso 1Si R Mod 500 = 0 ThenApplication.StatusBar = " Fila de ejecución: " . y formato (R, "# , # # 0 ") End If
V = Rng.Cells ( I , 1 ) Valor
Si V = vbNullString ThenIf Application.WorksheetFunction.CountIf ( Rng.Columns ( 1 ) , vbNullString ) > 1 ThenRng.Rows ( R ) . EntireRow.DeleteN = N + 1End IfElseIf Application.WorksheetFunction.CountIf (RNG . . Columnas ( 1 ) , V)> 1 ThenRng.Rows ( R ) EntireRow.DeleteN = N + 1End IfEnd IfNext R
endmacro :
Application.StatusBar = FalseApplication.ScreenUpdating = TrueApplication.Calculation = xlCalculationAutomaticMsgBox " filas duplicadas eliminados :" & CStr (N )
End Sub
5
Press " F5" para ejecutar el procedimiento . La macro se ejecutará y eliminar las filas duplicadas .