Microsoft Excel
Mostrar más instrucciones
Programación del Macro
1
Abra la hoja de cálculo en Excel y abra su editor de VBA pulsando Alt y la tecla F11 en el equipo.
2
Inicie un nuevo proyecto haciendo clic derecho en el libro en el menú de la derecha y elegir la opción "Nuevo" .
3
Comienza la nueva función con " DeleteDuplicateRows Sub (). " Esto informa al compilador VBA que hay una nueva subrutina que debe tener en cuenta.
4
Crear las variables con el siguiente código:
Fila dévil como conde LongDim Como LongDim Comparar Range VariantDim como gama
Esto le indica al sistema para dejar de lado las cuatro variables ( Row , Count, comparación y rango) para utilizar en el código . Usted puede usar cualquier nombre de variable tienen más sentido para usted, pero recuerde que debe cambiar en el código más adelante
5
Crear la macro con un código más básico : .
On Error GoTo EndMacroApplication.ScreenUpdating = FalseApplication.Calculation = xlCalculationManual
Set Rango = Application.Intersect ( ActiveSheet.UsedRange , _ActiveSheet.Columns ( ActiveCell.Column ) ) Application.StatusBar = " Fila de ejecución: " & Formato ( Rng.Row , "# , # # 0 " )
el primer grupo de código indica al sistema para ejecutar la macro si se encuentra con problemas . El segundo grupo se establece la variable de rango de acuerdo a lo que el usuario ha seleccionado
6
Escriba el siguiente código: .
Conde
= 0For Row = Range.Rows.Count Para 2 Paso - 1Si Mod Row 500 = 0 ThenApplication.StatusBar = " Fila de ejecución: " & Format ( R , "# , # # 0 ") End If
Compara = Range.Cells ( Fila, 1 ) . Valor
Esto le indica al sistema para pasar por cada una de las filas seleccionadas por el usuario, y cambiar la variable de comparación de esa fila cada vez que se mueve .
7
entrada el siguiente código siguiente : .
Si V = vbNullString ThenIf Application.WorksheetFunction.CountIf ( Rng.Columns ( 1 ) , vbNullString ) > 1 ThenRng.Rows ( R ) EntireRow.DeleteN = N + 1End IfElseIf Aplicación . WorksheetFunction.CountIf ( Rng.Columns ( 1 ) , V ) > 1 ThenRng.Rows ( R). EntireRow.DeleteN = N + 1End IfEnd Si
Estas declaraciones son las que en realidad indicar al sistema que comparar la variable de comparación a la siguiente celda y eliminar la fila si los dos son lo mismo.
8
Press enter para insertar un par de nuevas líneas , y luego escriba "Next Row" . Esto le indica al sistema para dejar de mirar a la primera fila, y pasar a la siguiente
9
cerrar la función con : .
Endmacro :
aplicación . StatusBar = FalseApplication.ScreenUpdating = TrueApplication.Calculation = xlCalculationAutomaticMsgBox " filas duplicadas eliminados :" & CStr (N )
End Sub
Estos versos finales dicen al sistema cómo cerrar la subrutina fuera, y también para mostrar un cuadro de mensaje útil que informa al usuario de que el Macro realidad hizo lo que tenía que hacer .
utilizar el modo Macro
10
Guardar la hoja de cálculo . Guardar un segundo , copia de seguridad antes de usar la macro. O copiar y pegar el archivo en una carpeta de copia de seguridad , o por la opción "Guardar como" para guardar el archivo segunda copia que tendrá que cerrar Excel y volver a abrirlo.
11
Click y arrastre el cursor alrededor de la columna de datos más importante . Este es el lugar para que todos los registros deben dife- como, si todo había sido introducido correctamente, no habría las entradas duplicadas .
12
Abra el menú " Herramientas " y seleccione " ; macros "Esto abre el cuadro de diálogo macros, que le permite elegir y ejecutar la macro
13
Seleccione la macro ; . si se ha utilizado el ejemplo de arriba , se llama" . DelDuplicateR " . , A continuación, pulse el botón "Ejecutar " . La macro se ejecutará automáticamente y aparecerá un mensaje indicando que los duplicados se han eliminado .