Macros con formatos condicionales

Hola,
Les agradecería me ayudaran con un problema, el cual detallo a continuación.
Tengo una base de datos de 1000 filas y 25 27 columnas. El punto es que he creado un formato condicional según el cual, si en la celda B8 aparece la letra "i" el rango C8:AA8 se colorea, lo cual se aplica a 2 condiciones más ( letras "n" y "p"). El problema es que necesito crear una macro para aplicar este formato condicional a cada una de las 1000 filas de mi base de datos.
Hasta ahora lo único que he logrado hacer es lo siguiente:
' Acceso directo: CTRL+i
'
    Range("C8:AA8").Select
    Selection.FormatConditions.Delete
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$B$8=""i"""
    Selection.FormatConditions(1).Interior.ColorIndex = 33
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$B$8=""n"""
    Selection.FormatConditions(2).Interior.ColorIndex = 45
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$B$8=""p"""
    Selection.FormatConditions(3).Interior.ColorIndex = 4
End Sub
Lo cual no me sirve puesto que tengo que cambiar el numero de la fila cada vez que desee aplicar la macro a una fila.
Espero me puedan ayudar
Gracias de antemano.

1 respuesta

1
Respuesta de
La macro sería más o menos así (nota no hago formato condicional, si no que directamente le cambio de color según sea el valor de la columna B):
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
Select Case UCase(Target) ' la pone en mayusculas
Case "I"
Range(Cells(Target.Row, 3), Cells(Target.Row, 27)).Interior.ColorIndex = 33
Case "N"
Range(Cells(Target.Row, 3), Cells(Target.Row, 27)).Interior.ColorIndex = 45
Case "P"
Range(Cells(Target.Row, 3), Cells(Target.Row, 27)).Interior.ColorIndex = 4
Case Else
Range(Cells(Target.Row, 3), Cells(Target.Row, 27)).Interior.ColorIndex = xlNone
End Select
End If
End Sub
Añade un comentario a esta respuesta
Añade tu respuesta
Haz clic para o
Escribe tu mensaje