none
Cambiar color de forma segun detalle celda RRS feed

  • Pregunta

  • Hola amigos, estoy utilizando una hoja Excel con la habilitación de macro. Pero requiero de su ayuda. Deseo cambiar el color de una forma (Elipse) según la palabra que se ingrese en una celda especifica.

    Por ejemplo, si en la celda BA3 ingreso OCUPADO que la forma (Elipse) me cambie a rojo. Si ingreso ASEO que cambie a color amarillo y si no tiene ningún estado de estos que cambie a verde.

    Tengo el siguiente código, pero me indica error que no se a declarado la función o sub .


    Private Sub Worksheet_Change(ByVal Target As Range)
        If Intersect(Target, Range("BA3")) Is Nothing Then Exit Sub
        If IsText(Target.Value) Then
            If Target.Value = "OCUPADO" Then
                ActiveSheet.Shapes("Elipse 2").Fill.ForeColor.RGB = vbRed
            ElseIf Target.Value = "ASEO" Then
                ActiveSheet.Shapes("Elipse 2").Fill.ForeColor.RGB = vbYellow
            Else
                ActiveSheet.Shapes("Elipse 2").Fill.ForeColor.RGB = vbGreen
            End If
        End If
    End Sub
    
    
    

    Que me falta declarar.


    • Editado Jnavarrete92 martes, 30 de julio de 2019 21:46 Indicar herramientda de trabajo
    martes, 30 de julio de 2019 21:44

Todas las respuestas


  • Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range("BA3")) Is Nothing Then Exit Sub If IsText(Target.Value) Then If Target.Value = "OCUPADO" Then ActiveSheet.Shapes("Elipse 2").Fill.ForeColor.RGB = vbRed ElseIf Target.Value = "ASEO" Then ActiveSheet.Shapes("Elipse 2").Fill.ForeColor.RGB = vbYellow Else ActiveSheet.Shapes("Elipse 2").Fill.ForeColor.RGB = vbGreen End If End If

    End Sub // te End Sub


     


     

     

    miércoles, 31 de julio de 2019 17:53
  • Hola   Jnavarrete92

     

    Dando seguimiento a tu pregunta, te comparto algunos procedimientos que puedes intentar.

    Te hace falta colocar el End Sub  debajo del ultimo End If

     

     

    Espero que te sean de utilidad.

     

    Gracias por usar los foros de MSDN.

     

    Pablo Rubio

     ____

     

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.

     

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft. 

     

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

     

    miércoles, 31 de julio de 2019 17:55