Saltar al contenido

Ejecutar automaticamente este macro


Recommended Posts

publicado

Sub CambiarColorCeldaCondicion()
Dim miRango As Range
Set miRango = Range("I7:AM300")
For Each celdaActual In miRango
   If celdaActual.Value = "LJO" Then celdaActual.Interior.Color = RGB(255, 204, 204)
   If celdaActual.Value = "T" Then celdaActual.Interior.Color = RGB(0, 204, 204)
   If celdaActual.Value = "L" Then celdaActual.Interior.Color = RGB(119, 210, 85)
   If celdaActual.Value = "V" Then celdaActual.Interior.Color = RGB(255, 255, 204)
   If celdaActual.Value = "C" Then celdaActual.Interior.Color = RGB(255, 229, 204)
   If celdaActual.Value = "I" Then celdaActual.Interior.Color = RGB(189, 183, 107)
   If celdaActual.Value = "HA" Then celdaActual.Interior.Color = RGB(65, 105, 225)
   If celdaActual.Value = "" Then celdaActual.Interior.Color = xlNone
Next

End Sub

publicado

Hola,

Segun te entiendo. quieres que cambie el fondo de la celda donde estas escibiendo, siempre y cuando la celda este en el rango MiRango.

Prueba esto con el evento Change de la hoja donde está MiRango

Private Sub Worksheet_Change(ByVal Target As Range)
   Dim miRango As Range
   Set miRango = Range("I7:AM300")
   If Application.Intersect(miRango, Target) Then
      Select Case Target
            Case Is = "LJO": Target.Interior.Color = RGB(255, 204, 204)
            Case Is = "T": Target.Interior.Color = RGB(0, 204, 204)
            Case Is = "L": Target.Interior.Color = RGB(119, 210, 85)
            Case Is = "V": Target.Interior.Color = RGB(255, 255, 204)

               '...

      End Select
   End If
End Sub

 

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.