Ejecutar macro al rellenar celda en EXCEL con cualquier texto

Quisiera que la figura circular se mantenga de color blanco y cambie a color amarillo cuando "C2" obtenga alguna información luego pueda cambiar a color verde cuando "C3" obtenga otra información, como un semáforo. Se ve fácil pero me tiene crasy.

1 Respuesta

Respuesta
2

Pon la siguiente macro en los eventos de tu hoja

Private Sub Worksheet_Change(ByVal Target As Range)
'Por Dante Amor
'Cambia el color de la figura
    '
    If Target.Count > 2 Then Exit Sub
    If Not Intersect(Target, Range("C2:C3")) Is Nothing Then
        With ActiveSheet.Shapes("1 Elipse")
            .Fill.Transparency = False
            If Range("C3").Value = "" Then
                If Range("C2").Value = "" Then
                    .Fill.Transparency = 1                  'transparente
                Else
                    .Fill.ForeColor.RGB = RGB(0, 255, 0)    'verde
                End If
            Else
                .Fill.ForeColor.RGB = RGB(255, 255, 0)      'amarillo
            End If
        End With
    End If
End Sub

Cambia en la macro "1 Elipse" por el nombre de tu figura.

Si quieres otros colores puedes consultar los colores estándar en el siguiente enlace:

http://dmcritchie.mvps.org/excel/colors.htm 



Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. En el panel del lado derecho copia la macro

'.[Sal u dos. Dante Amor. No olvides valorar la respuesta. 
'.[Avísame cualquier duda
.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas