根据date更改工作簿中工作表上的选项卡的颜色

我有一个工作簿,它包含对时间敏感的工作单(每个表单上有不同的工作单)。 有时在这个工作簿中可以有5到25页的任何地方。 在每张表的单元格H15中是工单的截止date。 我试图设置一个vba,当打开工作簿时,它会检查date,并在最后一天将工作表的选项卡更改为红色。 我有一个代码,我认为是正确的,但不工作。 我被告知尝试使用(私人小组Workbook_Open()),但我似乎无法得到正确的编码,所以它检查所有表。

谢谢,

Private Sub Worksheet_Change(ByVal Target As Range) With ActiveSheet If Range("H15").Value = Date Then .Tab.ColorIndex = 3 'Red End If End With End Sub 

试试这个,在ThisWorkbook模块(并删除工作表更改代码)。 (为了回应Jeeped的评论,标签颜色在​​其他地方被移除。)

 Private Sub Workbook_Open() Dim ws As Worksheet For Each ws In Worksheets If ws.Range("H15").Value = Date Then ws.Tab.ColorIndex = 3 Else ws.Tab.ColorIndex = xlColorIndexNone End If Next ws End Sub