我有一排重复“第一班”,“第二班”和“第三班”的单元格。表格的第一行是全年的日期。我已经有代码将文件打开到特定日期(总是在当前日期的前一天)并以蓝色突出显示当前日期。我正在尝试使当前的班次也突出显示相同的蓝色阴影。因此,如果在上午7点查看工作表,则仅在当前日期下具有“第一个班次”的单元格将突出显示,如果在下午3点查看,则在当前日期下具有“第二个班次”的单元格将突出显示,依此类推。
感谢您的帮助。
Private Sub Workbook_Open()
For I = 1 To 1700
If Cells(1, I).Value = Date - 1 Then
ActiveWindow.ScrollColumn = I
End If
Next
For I = 1 To 1700
If Cells(1, I).Value = Date Then
Cells(1, I).Interior.ColorIndex = 28
Cells(2, I).Interior.ColorIndex = 28
End If
Next
End Sub
答案 0 :(得分:1)
由于您的VBA提到了1700
,所以我假设您的轮班分别从1:00、9:00和17:00开始。
您可以通过以下公式使用条件格式:
第一班:
=AND(NOW()-TODAY()>1/24,NOW()-TODAY()<9/24)
第二班:
=AND(NOW()-TODAY()>9/24,NOW()-TODAY()<17/24)
三班制
=OR(NOW()-TODAY()>17/24,NOW()-TODAY()<1/24)