Private Sub Workbook_BeforeClose(Cancel As Boolean)
Worksheets("首页").Activate '激活首页工作表
Dim i As Integer
i = Worksheets.Count '取得工作表的数目
While ActiveSheet.Index < i '判断活动工作表是否是工作簿中的最后一张工作表
Worksheets(ActiveSheet.Index + 1).Activate '激活下一张工作表
Dim csname As String '提取D1单元格内容,以变量作为工作表名称
csname = Cells(1, 5).Value
If Range("E1") <> "" Then '排除工作表
If Range("G1") <> 0 Then '如果G1不等于0,则执行修改工作表标签颜色
With ActiveWorkbook.Sheets(csname).Tab
.ColorIndex = 3
End With
Else '如果不满足条件则执行
With ActiveWorkbook.Sheets(csname).Tab
.ColorIndex = 4
End With
End If
End If
Wend
Exit End
'除首页外其余工作表隐藏
Dim sh As Worksheet
Sheets("首页").Visible = True
Sheets("首页").Select
For Each sh In ThisWorkbook.Sheets
If sh.Name <> "首页" Then sh.Visible = False
Next
Exit End