Macro para eliminar fila, si la columna es de color azul

Alguien sabe como hacer una macro para que si una columna de la fila es de color "cyan" (por decir un color) la elimine por completo.

Por ejemplo mi tabla es la siguiente:

Nota: la palabra cyan, rojo, amarillo, etc. Es como si fuera el relleno de celda de ese color.

       A                 B           C         D         E        F

rojo                   23        12          2         0        6

amarillo             2           6        12       78        0

cyan                   1          12        56        6        2

rojo                   43         45          2        3        1

cyan                   3          12          3        0        2

cyan                  45         90          1        0        3

rojo                    17         67         2       56       9

1 Respuesta

Respuesta
1

Prueba esta macro, lee el color de la celda b2 y los busca en la tabla, eliminado las filas que contengan dicho color

y aqui esta la macro

Sub eliminarxcolores()
    xcolor = Range("b1").Interior.ColorIndex
    Set datos = Range("a3").CurrentRegion
    With datos
        r = .Rows.Count: c = .Columns.Count
        For i = 2 To r
            ycolor = .Cells(i, 1).Interior.ColorIndex
            If ycolor = xcolor Then ycolor = 1200
            .Cells(i, c + 1) = ycolor
        Next i
        Set datos = .CurrentRegion
        c = .Columns.Count
        .Sort key1:=Range(.Columns(c).Address), order1:=xlAscending, Header:=xlYes
        cuenta = WorksheetFunction.CountIf(.Columns(c), 1200)
        fila = WorksheetFunction.Match(1200, .Columns(c), 0)
        .Rows(fila).Resize(cuenta).Clear
        .Columns(c).Clear
    End With
    Set datos = Nothing
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas