¿Cómo eliminar filas según el color de fondo en Excel?
¿Cómo podrías eliminar filas completas basándote en el color de fondo? En este ejemplo, necesito eliminar todas las filas cuyas celdas están rellenas con un 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 filas con un color de fondo específico basado en cada celda
Eliminar filas con un color de fondo específico basado en una columna
Eliminar filas con un color de fondo específico basado en cada celda
Si tienes un rango de datos que está rellenado con algunos colores de celda de forma aleatoria, y necesitas eliminar las filas donde el color de la celda es azul, como se muestra en la siguiente captura de pantalla:
Para eliminar este tipo de filas, puedes usar el siguiente código VBA, por favor sigue estos pasos:
1. Mantén presionadas las teclas ALT + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Haz clic en Insertar > Módulo, y pega el siguiente código en la Ventana del Módulo.
Código VBA: Eliminar filas cuyas celdas contienen un color de relleno específico:
Sub DeleteRows()
'Updateby Extendoffice
Dim rngCl As Range
Dim xRows As Long
Dim xCol As Long
Dim colorLg As Long
On Error Resume Next
Set rngCl = Application.InputBox _
(Prompt:="Select a cell with the background color to be deleted", _
Title:="Kutools for Excel", Type:=8)
On Error GoTo 0
If rngCl Is Nothing Then
MsgBox "User cancelled operation." & vbCrLf & _
"Processing terminated", vbInformation, "Kutools for Excel"
Exit Sub
End If
colorLg = rngCl.Interior.Color
Application.ScreenUpdating = False
With ActiveSheet.UsedRange
For xRows = .Rows.Count To 1 Step -1
For xCol = 1 To .Columns.Count
If .Cells(xRows, xCol).Interior.Color = colorLg Then
.Rows(xRows).Delete
Exit For
End If
Next xCol
Next xRows
End With
Application.ScreenUpdating = True
End Sub
3. Luego presiona la tecla F5 para ejecutar este código, y aparecerá un cuadro de diálogo para recordarte que selecciones una celda con el color de relleno que deseas eliminar, ver captura de pantalla:
4. Luego haz clic en Aceptar, y se eliminarán todas las filas si la celda tiene un color de relleno específico.
Eliminar filas con un color de fondo específico basado en una columna
Si deseas eliminar las filas con un color específico basándote solo en una columna, por ejemplo, eliminar las filas con color azul en la columna A y obtener la siguiente captura de pantalla, aquí también hay un código VBA que puede ayudarte.
1. Mantén presionadas las teclas ALT + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Haz clic en Insertar > Módulo, y pega el siguiente código en la Ventana del Módulo.
Código VBA: Eliminar filas basadas en una columna cuyas celdas tienen un color de relleno específico:
Sub deleterow()
'UpdateBY Extendoffice
Dim xRg As Range, rgDel As Range
For Each xRg In ThisWorkbook.ActiveSheet.Range("A2:A21")
If xRg.Interior.ColorIndex = 20 Then
If rgDel Is Nothing Then
Set rgDel = xRg
Else
Set rgDel = Union(rgDel, xRg)
End If
End If
Next xRg
If Not rgDel Is Nothing Then rgDel.EntireRow.Delete
End Sub
Nota: En el código anterior, A2:A21 es la columna que contiene el color de relleno específico en base al cual deseas eliminar las filas, el número 20 en ColorIndex = 20 es el índice de color en base al cual deseas eliminar las filas. Puedes cambiarlos según tus necesidades.
3. Luego presiona la tecla F5 para ejecutar este código, y todas las filas cuyas celdas contienen el color azul en la columna A se eliminarán de una vez.
Las mejores herramientas de productividad para Office
Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...
Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo
- Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!