我对VBA很新,并且一直在论坛上搜索一个特定的代码。
我有一个包含多个不同图表的工作簿。我还有一个带有弹出框的UserForm,用户可以在其中选择城市并单击Enter。我想要做的是使用图表隐藏所有工作表,当用户选择一个特定城市时,我希望Excel显示该特定图表。例如,用户选择温哥华,Excel将显示与温哥华相关的工作表。
我还想要一个完成按钮,如果用户点击它,它将返回到UserForm所在的工作表。
Private Sub ENT_Click()
'Error if you do not select the City
If Me.City.Value = "" Then
MsgBox "Please Select a City", vbExclamation, "Select a City"
Me.City.SetFocus
Exit Sub
End If
If Me.City.Value = "Mississauga" Then
Sheets("Sheet4").Visible = True
Sheets("Sheet4").Activate
End If
End Sub
每次运行代码时,如果隐藏了工作表,或者UnHidden,我会一直收到一个超出范围的下标错误。
再次感谢您的帮助
答案 0 :(得分:0)
我标记工作表的方式出错了。该守则应该实际上是:
Private Sub ENT_Click()
'Error if you do not select the City
If Me.City.Value = "" Then
MsgBox "Please Select a City", vbExclamation, "Select a City"
Me.City.SetFocus
Exit Sub
End If
'Change "Mississauga" to the item in your ComboBox
If Me.City.Value = "Mississauga" Then
Worksheets(4).Visible = True
Worksheets(4).Activate
End If
End Sub