Macro coloree fila

Buenos días, necesito una macro que me realice la siguiente función, tengo una tabla desde a2-hasta g 3000, en una de las columnas (la columna g) escribo abierto o cerrado, y lo que necesito es una macro que cuando escriba abierto me coloree la fila de verde y si escribo cerrado me coloree la fila de rojo. Además necesito una macro para que me cuente el número de abiertos / cerrados que hay y por último si pudiera ser, otra para buscar elementos idénticos dentro de dicha tabla.
Muchísimas gracias y espero vuestra ayuda!
1

1 Respuesta

165.775 pts. Más de 35 años en la informática y más de 20 trabajando...
Entra en el editor de Visual Basic y en el explorador de proyectos haces doble click sobre la página en la que tienes los datos (si no está el explorador de proyectos puedes visualizarlo en el menú: ver - explorador de proyectos).
El código que tienes que poner es este:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim nLin As Long
    Dim color As Long
    If Left$(Target.AddressLocal, 3) = "$G$" Then ' ha cambiado la columna G
        nLin = Val(Right$(Target.AddressLocal, Len(Target.AddressLocal) - 3))
        Select Case UCase$(Target)
            Case "ABIERTO": color = 4
            Case "CERRADO": color = 3
            Case Else: color = xlNone
        End Select
        Rows(nLin).Interior.ColorIndex = color
    End If
End Sub
Muchas gracias por tu respuesta, pero tengo que decirte que la copio y la pego en el editor y no me funciona, no sé si es falta de conocimiento mío o haya algo que no esté bien, puesto que no me aparece ningún nombre de la macro y por tanto es como si no hubiera macro.
Si copias esa macro en la hoja dónde realizas los cambios no necesitas ejecutarla porque se ejecutaría sola.
Al estar declarada como "Private Sub" no aparece como una macro que tengas que ejecutar.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas