Tab ColorIndex reset excel vba
我写了一个VBA脚本,它在单元格的值函数中改变了工作表选项卡的颜色。 脚本运行良好,当我把值,但是当我清除单元格的内容值,脚本失败,颜色选项卡不重置。
这本书上的脚本:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) If Not Application.Intersect(Target, Range("BH37")) Is Nothing Then Call CouleurOnglet(Sh, Target) End If End Sub
模块上的脚本:
Sub CouleurOnglet(Sh As Object, Target As Range) With Sh Select Case Target Case Is = "OK" .Tab.ColorIndex = 4 'Couleur verte Case Is = "NOK" .Tab.ColorIndex = 3 'Couleur rouge Case Is = "A vérifier" .Tab.ColorIndex = 45 'Couleur orange Case Else .Tab.ColorIndex = xlAutomatic 'reset couleur End Select End With End Sub
该选项卡的默认颜色是ColorIndex中值为-4142或xlcolorindexnone
任何颜色。
如果你把而不是:
.Tab.Color = xlAutomatic
代码:
.Tab.ColorIndex = xlColorIndexNone
它应该按照要求工作。