Cómo eliminar una fila sí y una fila no en Excel

  • Compartir Este
Michael Brown

Este breve tutorial explica cómo eliminar una de cada dos filas en Excel mediante filtrado o con código VBA. También aprenderá cómo eliminar una de cada tres, cuatro o cualquier otra enésima fila.

Hay muchas situaciones en las que puede ser necesario eliminar filas alternativas en hojas de cálculo de Excel. Por ejemplo, es posible que desee conservar los datos de las semanas pares (filas 2, 4, 6, 8, etc.) y mover todas las semanas impares (filas 3, 5, 7, etc.) a otra hoja.

Por lo general, eliminar una fila sí y otra no en Excel se reduce a seleccionar filas alternativas. Una vez seleccionadas las filas, basta con pulsar una vez el botón Borrar Más adelante en este artículo, aprenderás algunas técnicas para seleccionar y eliminar rápidamente una fila sí y una fila no en Excel.

    Cómo eliminar todas las demás filas en Excel mediante filtrado

    En esencia, una forma habitual de borrar una fila sí y otra no en Excel es la siguiente: primero, se filtran las filas alternas, luego se seleccionan y se borran todas a la vez. A continuación se detallan los pasos:

    1. En una columna vacía junto a tus datos originales, introduce una secuencia de ceros y unos. Puedes hacerlo rápidamente escribiendo 0 en la primera celda y 1 en la segunda, luego copiando las dos primeras celdas y pegándolas columna abajo hasta la última celda con datos.

      También puedes utilizar esta fórmula:

      =MOD(ROW(),2)

      La lógica de la fórmula es muy sencilla: la función ROW devuelve el número de fila actual, la función MOD lo divide por 2 y devuelve el resto redondeado al número entero.

      Como resultado, tienes 0 en todas las filas pares (porque se dividen por 2 uniformemente sin resto) y 1 en todas las filas impares:

    2. Dependiendo de si desea eliminar filas pares o impares, filtre unos o ceros.

      Para hacerlo, seleccione cualquier celda de su columna Ayudante, vaya a la pestaña Datos tab> Ordenar y filtrar y haga clic en el botón Filtro Las flechas de filtro desplegables aparecerán en todas las celdas de encabezado. Haga clic en el botón de flecha de la columna Ayudante y marque una de las casillas:

      • 0 para borrar las filas pares
      • 1 para borrar las filas impares

      En este ejemplo, vamos a eliminar las filas con valores "0", por lo que las filtramos:

    3. Ahora que todas las filas "1" están ocultas, seleccione todas las filas "0" visibles, haga clic con el botón derecho en la selección y haga clic en Borrar fila :

    4. El paso anterior le ha dejado con una tabla vacía, pero no se preocupe, las filas "1" siguen ahí. Para hacerlas visibles de nuevo, simplemente elimine el autofiltro haciendo clic en el botón Filtro de nuevo:

    5. La fórmula de la columna C se recalcula para las filas restantes, pero ya no la necesita. Ahora puede eliminar con seguridad la columna Ayudante:

    Como resultado, en nuestra hoja de cálculo sólo quedan las semanas pares, ¡las impares han desaparecido!

    Sugerencia: si desea mover las filas filtradas a otro lugar en lugar de eliminarlas por completo, copie primero las filas filtradas y péguelas en una nueva ubicación y, a continuación, elimine las filas filtradas.

    Cómo eliminar filas alternas en Excel con VBA

    Si no está dispuesto a perder el tiempo en una tarea tan trivial como eliminar una de cada dos filas de sus hojas de cálculo de Excel, la siguiente macro VBA puede automatizar el proceso por usted:

    Sub Delete_Alternate_Rows_Excel() Dim SourceRange As Range Set SourceRange = Application.Selection Set SourceRange = Application.InputBox( "Range:" , "Select the range" , SourceRange.Address, Type :=8) If SourceRange.Rows.Count>= 2 Then Dim FirstCell As Range Dim RowIndex As Integer Application.ScreenUpdating = False For RowIndex = SourceRange.Rows.Count - (SourceRange.Rows.Count Mod 2) To 1Step -2 Set FirstCell = SourceRange.Cells(RowIndex, 1) FirstCell.EntireRow.Delete Next Application.ScreenUpdating = True End If End Sub

    Cómo eliminar cada dos filas en Excel utilizando la macro

    Inserte la macro en su hoja de cálculo de la forma habitual a través del Editor de Visual Basic:

    1. Pulse Alt + F11 para abrir la ventana de Visual Basic para Aplicaciones.
    2. En la barra de menús superior, haga clic en Inserte > Módulo y pegue la macro anterior en el campo Módulo
    3. Pulse la tecla F5 para ejecutar la macro.
    4. Aparecerá un cuadro de diálogo que le pedirá que seleccione un rango. Seleccione su tabla y haga clic en Aceptar:

    Se eliminan todas las demás filas del rango seleccionado:

    Cómo eliminar cada N filas en Excel

    Para esta tarea, vamos a ampliar la técnica de filtrado que hemos utilizado para eliminar una de cada dos filas. La diferencia está en la fórmula en la que se basa el filtrado:

    MOD(ROW()- m , n )

    Dónde:

    • m es el número de fila de la primera celda con datos menos 1
    • n es la fila N que desea eliminar

    Digamos que sus datos comienzan en la fila 2 y desea eliminar cada 3 filas. Entonces, en su fórmula n es igual a 3, y m es igual a 1 (fila 2 menos 1):

    =MOD(FILA() - 1, 3)

    Si nuestros datos comenzaron en la fila 3, entonces m sería igual a 2 (fila 3 menos 1), y así sucesivamente. Esta corrección es necesaria para numerar secuencialmente las filas, empezando por el número 1.

    Lo que hace la fórmula es dividir un número de fila relativo por 3 y devolver el resto después de la división. En nuestro caso, da cero para cada tercera fila porque cada tercer número se divide por 3 sin resto (3,6,9, etc.):

    Y ahora, realiza los pasos ya conocidos para filtrar las filas "0":

    1. Seleccione cualquier celda de la tabla y haga clic en el botón Filtro en el botón Datos
    2. Filtra la columna Ayudante para mostrar sólo valores "0".
    3. Seleccione todas las filas "0" visibles, haga clic con el botón derecho y elija Borrar fila del menú contextual.
    4. Quite el filtro y elimine la columna Helper.

    De forma similar, puede eliminar cada 4ª, 5ª o cualquier otra fila Nth en Excel.

    En caso de que necesite eliminar filas con datos irrelevantes, el siguiente tutorial le será de utilidad: Cómo eliminar filas basándose en el valor de una celda.

    Le agradezco su lectura y espero volver a verle en nuestro blog la semana que viene.

    Michael Brown es un entusiasta de la tecnología dedicado y apasionado por simplificar procesos complejos utilizando herramientas de software. Con más de una década de experiencia en la industria de la tecnología, ha perfeccionado sus habilidades en Microsoft Excel y Outlook, así como en Google Sheets y Docs. El blog de Michael está dedicado a compartir su conocimiento y experiencia con otros, brindando consejos y tutoriales fáciles de seguir para mejorar la productividad y la eficiencia. Ya sea un profesional experimentado o un principiante, el blog de Michael ofrece información valiosa y consejos prácticos para aprovechar al máximo estas herramientas de software esenciales.