Formato condicional más de 3 condiciones en Excel 2003
En esta ocasión comparto una macro que permitirá a las versiones de Excel 2003 y anteriores, utilizar más de 3 opciones de formato condicional. Esto se hace mediante el constructor Select Case con el evento Change de la hoja activa.
Código:
'--------------------------------------------------------------------------------------- ' Procedure : Worksheet_Change ' Date : 24/04/2011 ' Purpose : Formato condicional con más de 3 condiciones en Excel 2003 (-) '--------------------------------------------------------------------------------------- ' Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo fin If Application.Intersect(Target, [A3:I21]) Is Nothing Then Exit Sub With ThisWorkbook.ActiveSheet Select Case Target Case .Range("K3").Value Target.Interior.ColorIndex = .Range("K3").Interior.ColorIndex Case .Range("K4").Value Target.Interior.ColorIndex = .Range("K4").Interior.ColorIndex Case .Range("K5").Value Target.Interior.ColorIndex = .Range("K5").Interior.ColorIndex Case .Range("K6").Value Target.Interior.ColorIndex = .Range("K6").Interior.ColorIndex Case .Range("K7").Value Target.Interior.ColorIndex = .Range("K7").Interior.ColorIndex Case .Range("K8").Value Target.Interior.ColorIndex = .Range("K8").Interior.ColorIndex Case .Range("K9").Value Target.Interior.ColorIndex = .Range("K9").Interior.ColorIndex Case .Range("K10").Value Target.Interior.ColorIndex = .Range("K10").Interior.ColorIndex Case .Range("K11").Value Target.Interior.ColorIndex = .Range("K11").Interior.ColorIndex Case .Range("K12").Value Target.Interior.ColorIndex = .Range("K12").Interior.ColorIndex Case Else Target.Interior.ColorIndex = xlColorIndexNone End Select End With Exit Sub fin: MsgBox "Intentaste borrar más de una celda a la vez. Debes de borrar celda por celda", vbCritical, "Error de borrado" End Sub