Hi guys,
Below is my code. Is there any way to shorten the coding?
Code
Sub Color()
Dim itf As Worksheet: Set itf = Sheets("Interface")
Set rng = Range("I18:O18,I21:O21,I24:O24,I27:O27")
itf.Unprotect "cat"
rng.FormatConditions.Delete
With rng.FormatConditions
With .Add(Type:=xlCellValue, Operator:=xlEqual, Formula1:="0730-1600")
.Interior.ColorIndex = 41
.Font.Color = vbWhite
End With
With .Add(Type:=xlCellValue, Operator:=xlEqual, Formula1:="0930-1800")
.Interior.ColorIndex = 41
.Font.Color = vbWhite
End With
With .Add(Type:=xlCellValue, Operator:=xlEqual, Formula1:="1130-2000")
.Interior.ColorIndex = 41
.Font.Color = vbWhite
End With
With .Add(Type:=xlCellValue, Operator:=xlEqual, Formula1:="1330-2200")
.Interior.ColorIndex = 46
.Font.Color = vbWhite
End With
With .Add(Type:=xlCellValue, Operator:=xlEqual, Formula1:="1530-0000")
.Interior.ColorIndex = 46
.Font.Color = vbWhite
End With
With .Add(Type:=xlCellValue, Operator:=xlEqual, Formula1:="1730-0200")
.Interior.ColorIndex = 46
.Font.Color = vbWhite
End With
With .Add(Type:=xlCellValue, Operator:=xlEqual, Formula1:="1930-0400")
.Interior.ColorIndex = 3
.Font.Color = vbWhite
End With
With .Add(Type:=xlCellValue, Operator:=xlEqual, Formula1:="2130-0600")
.Interior.ColorIndex = 3
.Font.Color = vbWhite
End With
With .Add(Type:=xlCellValue, Operator:=xlEqual, Formula1:="2330-0800")
.Interior.ColorIndex = 3
.Font.Color = vbWhite
End With
With .Add(Type:=xlCellValue, Operator:=xlEqual, Formula1:="OFF")
.Interior.ColorIndex = 16
.Font.Color = vbWhite
End With
With .Add(Type:=xlCellValue, Operator:=xlEqual, Formula1:="REST")
.Interior.ColorIndex = 16
.Font.Color = vbWhite
End With
End With
itf.Protect "cat"
End Sub
Display More