Saltar al contenido principal

Eliminar filas según el valor de la celda en Excel: tutorial sencillo

Autor: Xiaoyang Última modificación: 2024-04-09

Ya sea que esté tratando con una hoja de cálculo pequeña o un conjunto de datos grande, saber cómo eliminar filas según los valores de las celdas puede ahorrarle tiempo y esfuerzo. Este proceso se puede realizar utilizando varias funciones de Excel, incluida la función Filtrar, la herramienta Buscar y reemplazar, la función Ordenar e incluso utilizando técnicas avanzadas. Al final de esta guía, estará equipado con el conocimiento para eliminar de manera eficiente filas no deseadas de sus hojas de Excel, garantizando que sus datos estén limpios y sean relevantes para sus necesidades de análisis.

Por ejemplo, si quiero eliminar todas las filas donde la columna de nombre contiene Jener, ¿cómo debo proceder?

Eliminar filas enteras según el valor de la celda

Elimine filas en la selección según el valor de la celda con la función Ordenar


Eliminar filas enteras según el valor de la celda en Excel

Excel ofrece varias formas de eliminar filas según valores de celda específicos. Esta sección cubre métodos que van desde funciones simples de Excel como filtrar, buscar y reemplazar y Kutools hasta técnicas más avanzadas que involucran VBA. Ya seas principiante o usuario avanzado, encontrarás un método que se adapta a tu nivel de habilidad y necesidades.

???? Note: Los siguientes métodos para eliminar filas eliminarán todos los datos dentro de esa fila, incluido el contenido de otras celdas de la fila. Para evitar la pérdida de datos, considere duplicar el conjunto de datos en otra hoja de trabajo antes de eliminarlo.

Elimine filas enteras según el valor de la celda con la función Filtro

Normalmente, puede aplicar la función Filtro para mostrar las filas que cumplen con criterios específicos y luego eliminar la fila de inmediato.

Paso 1: aplique la función Filtro para filtrar las filas no deseadas

  1. Seleccione el rango de datos en el que desea eliminar filas. Y luego, haga clic Datos > Filtrar, ver captura de pantalla:
  2. Ahora, aparecerán flechas desplegables en el encabezado de cada columna. Haga clic en la flecha desplegable en la columna que contiene los valores en función de los cuales desea eliminar filas. Por ejemplo, si desea eliminar filas con el nombre Jener, debe hacer clic en la flecha en la columna Nombre.
  3. En el menú desplegable, desmarque Seleccionar todo para borrar todas las selecciones y marque solo la casilla junto a Jener o ingrese manualmente Jener en el cuadro de búsqueda para encontrarlo rápidamente.
  4. Y luego, haga clic en OK para aplicar el filtro. Solo se mostrarán las filas que contienen Jener. Ver captura de pantalla:

Paso 2: eliminar las filas filtradas

Seleccione las filas visibles, luego haga clic derecho en una de las filas seleccionadas y elija Borrar fila desde el menú contextual. Esto eliminará todas las filas seleccionadas.

Paso 3: limpia el filtro

Luego, haga clic en el Datos > Filtrar de nuevo. Esto eliminará el filtro y verás todos los registros excepto los eliminados.

???? Propina:
  • De manera similar a cómo aplico el método de filtro para eliminar filas que contienen el texto Jener, también puede utilizarlo para eliminar filas según condiciones numéricas o de fecha, como se muestra a continuación en las capturas de pantalla:
    Condiciones del filtro numérico:


    Condiciones del filtro de fecha:
  • También puede utilizar la función Filtrar para filtrar y eliminar todas las filas que contienen cierto color de fondo. Ver captura de pantalla:
  • Puede utilizar la función de filtro para filtrar según múltiples criterios para filtrar el contenido que no necesita y luego eliminarlo. Por ejemplo, supongamos que desea eliminar todas las filas donde el vendedor es Jener y las ventas totales son superiores a $7000. Primero debe filtrar las filas por nombre Jener y luego filtrar las ventas que sean superiores a 7000.
 

Elimine filas enteras según el valor de la celda con Kutools AI Aide

Kutools for Excel es un complemento integral que incluye más de 300 funciones avanzadas, diseñadas para simplificar varios tipos de tareas complejas en Excel. Una de sus características, Asistente de IA de Kutools, ayuda a automatizar tareas como filtrar y eliminar filas según criterios específicos.

???? Note: Para usar esto Asistente de IA de Kutools of Kutools for Excel, Por favor descargue e instale Kutools para Excel de antemano.

Después de instalar Kutools for Excel, Por favor haga clic en Kutools IA > Asistente de IA para abrir el Asistente de IA de Kutools cristal:

  1. Seleccione el rango de datos, luego escriba su requisito en el cuadro de chat y haga clic Enviar botón o prensa Participar clave para enviar la pregunta;
    "Elimine las filas si la columna Nombre contiene el nombre Jener en la selección"
  2. Después de analizar, haga clic Implementación botón para ejecutar. Kutools AI Aide procesará su solicitud utilizando AI y eliminará las filas especificadas directamente en Excel.
???? Propina:
  • Para eliminar filas según varios criterios, simplemente ajuste los requisitos en consecuencia. Por ejemplo, utilice comandos como "Eliminar filas donde la columna Nombre incluye a Jener o Kevin en la selección"O"Elimine las filas donde la columna Nombre contiene Jener y las ventas totales superan las 7000 en la selección".
  • Este metodo no admite deshacer función. Sin embargo, si desea restaurar los datos originales, puede hacer clic en Insatisfecho para revertir los cambios.
 

Elimine filas enteras según el valor de la celda con la función Buscar y reemplazar

Eliminar filas enteras en función de un valor de celda específico utilizando la función Buscar y reemplazar de Excel es un método sencillo que puede resultar muy eficaz para limpiar sus datos. Por favor haga lo siguiente:

Paso 1: aplique la función Buscar y reemplazar para seleccionar el valor específico

  1. Seleccione los datos de la columna donde eliminará las filas según cierto valor de celda y luego abra el Buscar y reemplazar cuadro de diálogo presionando Ctrl + F llaves al mismo tiempo
  2. En Buscar y reemplazar cuadro de diálogo, escriba el valor de celda determinado (en nuestro caso, ingresamos el Jener) en el Encuentra lo que caja, y haga clic en Encuentra todos botón. Ver captura de pantalla:
  3. Seleccione todos los resultados de búsqueda en la parte inferior de Buscar y reemplazar cuadro de diálogo y cierre este cuadro de diálogo. (Puede seleccionar uno de los resultados de búsqueda y luego Ctrl + A teclas para seleccionar todos los resultados encontrados.) Y se seleccionan todas las celdas que contienen un valor determinado. Luego, cierre este cuadro de diálogo. Ver captura de pantalla:

Paso 2: eliminar las filas según el valor seleccionado

  1. Con las celdas aún seleccionadas, haga clic derecho en una de las celdas seleccionadas y elija Borrar desde el menú contextual.
  2. Seleccione Fila completa en el cuadro de diálogo Eliminar y haga clic en OK para eliminar todas las filas que contienen el valor especificado.
 

Elimine filas enteras según el valor de la celda con código VBA

Eliminar filas según el valor de la celda usando VBA (Visual Basic para Aplicaciones) en Excel permite la automatización de la tarea, haciéndola eficiente, especialmente para conjuntos de datos grandes.

Paso 1: abre el editor de módulos de VBA y copia el código

  1. Prensa Alt + F11 teclas para abrir el Microsoft Visual Basic para aplicaciones ventana.
  2. En la ventana abierta, haga clic en recuadro > Módulo para crear un nuevo módulo en blanco.
  3. Luego, copie y pegue el siguiente código en el módulo en blanco.
    Sub DeleteRowsBasedOnCellValue()
    'Updateby Extendoffice
        Dim ws As Worksheet
        Set ws = ActiveSheet
        Dim columnRange As Range
        On Error Resume Next
        Set columnRange = Application.InputBox("Select the column range to check:", "Kutools for Excel", Type:=8)
        On Error GoTo 0
        If columnRange Is Nothing Then Exit Sub
        Dim lastRow As Long
        lastRow = ws.Cells(ws.Rows.Count, columnRange.Column).End(xlUp).Row
        Dim criteria As String
        criteria = Application.InputBox("Enter the value to delete rows for:", "Kutools for Excel", Type:=2)
        If criteria = "" Then Exit Sub
        Dim i As Long
        For i = lastRow To 1 Step -1
            If ws.Cells(i, columnRange.Column).Value = criteria Then
                ws.Rows(i).Delete
            End If
        Next i
    End Sub
    

Paso 2: ejecuta el código

  1. Entonces presione F5 clave para ejecutar el código. En el cuadro de diálogo emergente, seleccione la columna donde eliminará filas según un valor determinado y haga clic en OK del botón.
  2. En el siguiente cuadro de diálogo, escriba el valor determinado según el cual eliminará las filas y haga clic en OK botón. Ver captura de pantalla:

Resultado:

Y luego verá que se han eliminado filas enteras en función del valor especificado.

???? Note: Este método de código VBA no admite Deshacer, así que asegúrese de que la operación se realice como se espera antes de usarlo. Además, es recomendable mantener una copia de seguridad de sus datos para protegerlos contra cambios o pérdidas no deseadas.

Elimine filas en la selección según el valor de la celda con la función Ordenar

Todos los métodos anteriores eliminan la fila completa, lo que puede ser una limitación. Por ejemplo, el uso de estos métodos eliminaría todos los datos a la derecha del conjunto de datos. Suponga que desea eliminar solo ciertos registros dentro del conjunto de datos y al mismo tiempo conservar el resto de los datos. En ese caso, se necesita un enfoque alternativo.

Paso 1: crear una columna auxiliar para los datos

Crea una nueva columna que nos ayudará a realizar el seguimiento del pedido. Debe insertar una columna al lado de sus datos y luego completarla con un número de serie como 1, 2, 3… ver captura de pantalla:

Paso 2: Ordene los datos según la columna específica

  1. Seleccione la columna de datos en función de la cual desea eliminar filas. Luego, haga clic Datos > Ordenar de la A a la Z or Z a Ay aparece un cuadro de diálogo Advertencia de clasificación, seleccione Amplia la selecciony luego haga clic en Ordenar botón. Ver captura de pantalla:
  2. Ahora, las filas con los mismos valores se agruparán, lo que facilitará su identificación y selección. Ver captura de pantalla:

Paso 3: eliminar las filas ordenadas

  1. Seleccione el grupo de registros que desea eliminar y luego haga clic derecho y luego elija Borrar desde el menú contextual. En el Borrar cuadro de diálogo, seleccione Desplazar celdas hacia arriba opción. Y luego, haga clic OK Botón. Ver captura de pantalla:
  2. Solo se eliminan los registros cuyo nombre es Jener sin eliminar toda la fila. Por lo tanto, cualquier dato a la derecha o izquierda de su conjunto de datos no se verá afectado.

Paso 4: aplique la función Ordenar para restaurar el orden original de los datos

Haga clic en el encabezado de la columna de ayuda y luego vaya a Datos en la cinta y seleccione Ordenar de la A a la Z para organizar los datos según la secuencia en la columna auxiliar. Esto restaurará los datos dentro del rango seleccionado a su orden original según sea necesario.

Paso 5: eliminar la columna auxiliar

Finalmente, elimine la columna auxiliar según sea necesario para limpiar su hoja de trabajo.


En este artículo, exploramos varios métodos para eliminar filas en Excel según los valores de las celdas. Puedes elegir el que más te guste. Si está interesado en explorar más consejos y trucos de Excel, nuestro sitio web ofrece miles de tutoriales, por favor haga clic aquí para acceder a ellos. ¡Gracias por leer y esperamos brindarle más información útil en el futuro!


Artículos relacionados:

  • Elimina fácilmente celdas en blanco en Excel – Tutorial completo
  • Eliminar celdas en blanco en Excel es una tarea común que puede ayudar a optimizar sus datos, haciéndolos más fáciles de analizar, comprender y presentar. Las celdas en blanco pueden interrumpir su análisis de datos, provocar errores en las fórmulas y hacer que sus conjuntos de datos parezcan incompletos o poco profesionales. En este tutorial, exploraremos varios métodos para eliminar o administrar eficientemente celdas en blanco en Excel, como la función Ir a especial, fórmulas y función Filtrar. Cada método atiende diferentes necesidades y escenarios, por lo que puedes elegir el que mejor se adapte a tus necesidades.
  • Eliminar filas según el color de fondo
  • ¿Cómo podría eliminar filas enteras según el color de fondo? En este ejemplo, necesito eliminar todas las filas cuyas celdas se llenaron con color de fondo azul como se muestra en la siguiente captura de pantalla. Con este artículo obtendrás algunos códigos para realizar esta tarea en Excel.
  • Eliminar cada dos filas
  • Si desea eliminar rápidamente cada dos filas o columnas en Excel, el punto principal es cómo puede seleccionar rápidamente cada dos filas o columnas primero y luego aplicarles la operación de eliminación. Y este artículo le mostrará algunas cosas complicadas sobre cómo seleccionar primero todas las demás filas o columnas y luego eliminarlas rápidamente.
Comments (39)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
In given range, if any cell contains defined text the entire row gets deleted.

Pls share code
This comment was minimized by the moderator on the site
Hi Yogesh,
On this webpage, the second method is to delete rows by cell values with VBA code. You can go to there and copy the code directly!
https://www.extendoffice.com/documents/excel/815-excel-remove-rows-based-on-cell-value.html#vba
This comment was minimized by the moderator on the site
There are two issues with the code posted as of this date. 1) the variable xTitleId is not declared, which causes a compilation error if Option Explicit is in use. 2) With Excel 2016, it appears that a range is limited to 129 areas. Each discontiguous matching cell found in the loop creates another area in the DeleteRng variable. Unfortunately, the Union method does not raise an error if that number of areas is exceeded; it just ignores the remaining cells. When the loop is finished, DeleteRng will have no more than 129 areas.
This comment was minimized by the moderator on the site
Hi TomTheToolman,
Thank you so much for your feedback. I've already updated the new code in the article. If you have any other questions, please don't hesitate to let me know.
Amanda
This comment was minimized by the moderator on the site
very well. Thank you!
This comment was minimized by the moderator on the site
Can someone help me...If 3rd column has value 0, then delete all values of corresponding column 1st. In this case answer should be the last line only.... Check MenuName ID 3149 VNLA MILFLLE 2 3149 TURKEY PNN 0 3149 R. BEEF PNN 0 3149 MIX MOCHA 38 3150 M.G.R 1/2 0 3150 THE PEPPE L 0 3150 MIX SLD 0 3150 EGGPLANT 0 3150 STILL WATER 7 3151 MIX MOCHA 38
This comment was minimized by the moderator on the site
Thanks for sharing. I am actually looking for a code that doesn't ask user for range but instead selects a specific column say column "A" and runs till the last row of that column. Can you please help..
This comment was minimized by the moderator on the site
Hi everybody, I am wondering what can we do to delete the following (According to the example shown in this page): Soe appears at several date (sept, October... etc). What I would like is to delete the line where Soe is but to keep the line with last date she appeared. In addition, some lines could be in double but I still want to keep it. So for example, you have the lines: - July 3 /Soe - Sep 4 / Soe - Sep 4 / Soe - Oct 19/ Soe - Nov 13 / Soe - Nov 13 / Soe and what I want to keep is: - Nov 13 / Soe - Nov 13 / Soe My real case is: I have different EAN code and version 1, 2, 3 or 4 and I want to keep the line where the version is the higher. e.g.: I have: - EAN 1 / Version 1 - EAN 1 / Version 1 - EAN 1 / Version 2 - EAN 1 / Version 2 - EAN 2 / Version 2 - EAN 2 / Version 3 - EAN 2 / Version 3 and I want to keep: - EAN 1 / Version 2 - EAN 1 / Version 2 - EAN 2 / Version 3 - EAN 2 / Version 3 I am searching since hours and I am completely blocked on this issue. Many thanks in advance for your brain and help. Best, Marion
This comment was minimized by the moderator on the site
Hi, Thank you this was really helpful. However, there's an error that pops up when I run the codes it says "Object variable or with block variable not set" and it points to " the line DeleteRNG.EntireRow.Delete". Could you please help me with debugging this. Thanks.
This comment was minimized by the moderator on the site
I am trying to use this macro in order to delete unused formulas, because excel views blank formula cells as a zero value and will print extra pages. I was hoping when I deleted the unused formulas, when I printed it would only print the pages that had information. This is not the case and I really need help to find a solution. I have tried using this formula and it is not working and prints three extra pages that I do not need even with the extra formulas being deleted. Sub selectonly() ' ' selectonly Macro ' Range("A1").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)" End Sub
This comment was minimized by the moderator on the site
thank you so much. That save me a lot of time
This comment was minimized by the moderator on the site
Trying to find a delete Function that will delete entire designated rows automatically, based on certain values or certain text contained in other cell(s), using only automated formulas.
This comment was minimized by the moderator on the site
How can i delete selected cell that i want based on value that i entered for example : A1 B1 C1 D1 A2 B2 C2 D2 A3 B3 C3 D3 A4 B4 C4 D4 When i entered in some cell for example "2" then 2 row will be deleted from A3:D4. If i entered "1" then 1 row will be deleted from A4:D4. if i entered "3" then 3 row will be deleted from A2:D4
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations