当您拥有表单中的控件时,没有问题但是,如果您从工作表本身中获得它,则它实际上可以工作,但错误为1004所以只需使用(On Error Resume Next)
Private Sub ComboBox1_Change()
Dim wsMon As Worksheet
Set wsMon = ThisWorkbook.Worksheets("Montag")
On Error Resume Next
Select Case ComboBox1.ListIndex
Case 0
xHide (False)
wsMon.Rows("12:25").EntireRow.Hidden = True
xHide (True)
Case 1
xHide (False)
wsMon.Rows("12:25").EntireRow.Hidden = False
wsMon.Rows("19:25").EntireRow.Hidden = True
xHide (True)
Case 2
xHide (False)
wsMon.Rows("12:25").EntireRow.Hidden = False
xHide (True)
End Select
End Sub
xHide是布尔函数:真实
Application.ScreenUpdating = True
Application.DisplayAlerts = True
或错误
Application.ScreenUpdating = False
Application.DisplayAlerts = False
如果运行此命令,并且我的工作表受密码保护,则会收到相同的错误。尝试添加此行(如有必要,您可以重新保护它):
wksMain.Unprotect (conPassword)
此外,接下来您不需要on错误的履历表,如果您确实使用了它,那么只要经过代码,就应该添加Go To 0。