隐藏所有图表并根据ComboBox选择显示它们

时间:2015-08-12 21:28:31

标签: excel vba excel-vba graph charts

我对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,我会一直收到一个超出范围的下标错误。

再次感谢您的帮助

1 个答案:

答案 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