Excel-删除条件下拉列表中的值的宏
好的,我有一个宏分配给一个按钮,根据下拉列表的值隐藏一个选项卡Excel-删除条件下拉列表中的值的宏,excel,vba,drop-down-menu,tabs,hide,Excel,Vba,Drop Down Menu,Tabs,Hide,好的,我有一个宏分配给一个按钮,根据下拉列表的值隐藏一个选项卡 Sub Hide_Tabs() ' Hide unused Tabs If Sheet4.Range("G2") = Sheet13.Range("B154") Then Sheet5.Visible = False Else Sheet16.Visible = False End If End Sub 在我的所有测试中都可以正常工作,并且我还为工作表(不是模块)指定了一个宏来删除下面单元格中的值。如果单元格B8值发生变化,
Sub Hide_Tabs()
' Hide unused Tabs
If Sheet4.Range("G2") = Sheet13.Range("B154") Then
Sheet5.Visible = False
Else
Sheet16.Visible = False
End If
End Sub
在我的所有测试中都可以正常工作,并且我还为工作表(不是模块)指定了一个宏来删除下面单元格中的值。如果单元格B8值发生变化,我将其用于条件下拉。(例如,Cel B8有一份砖块类型列表,Cel B9有一份颜色列表,取决于砖块类型)
无论如何。。工作也很好。。
现在,我正在尝试获取第一个宏结果,第二个宏的工作方式是在第4页上放置一个代码,根据cel G2的值,应隐藏两个不同的选项卡,到目前为止,我得到了:
Private Sub Hide_Tiling(ByVal Target As Range)
On Error Resume Next
'if dropdown on Shee4 G2 value = Sheet13 B154, hide Sheet5.
'if not, hide Sheet6
If Target.Column = 7 And Target.Row = 2 Then
If Sheet4.Range("G2") = Sheet13.Range("B154") Then
Application.EnableEvents = False
Sheet5.Visible = False
Else
Sheet16.Visible = False
End If
End If
exitHandler:
Application.EnableEvents = True
Exit Sub
End Sub
它不会返回错误,也不会执行任何操作:)
我错过了什么
单元格G2和H2是否合并有关系?我也试着解开它们,所以只指向G2单元,仍然没有任何结果
感谢只需调试.print或msgbox Sheet4.Range(“G2”)、Sheet13.Range(“B154”)、Target.Column和Target.Row,并检查是否有错误,抱歉我的无知@Gotrekk,但我该如何做?如果Sheet4.Range(“G2”)=Sheet13.Range(“B154”),则在刚刚之后添加msgbox Target.Column&“-”&Target.Row&“&Sheet4.Range(“G2”)&-”&Sheet13.Range(“B154”)(不能将整个代码转换为注释,但)。。。如果Sheet4.Range(“G2”)=Sheet13.Range(“B154”),则调试.Print Target.Column&“-”&Target.Row&“-”&Sheet4.Range(“G2”)&Sheet13.Range(“B154”)应用程序。EnableEvents=False。。。尝试了msgbox和debug.print,但没有任何想法@Gotrekk?只需debug.print或msgbox Sheet4.Range(“G2”)、Sheet13.Range(“B154”)、Target.Column和Target.Row,并检查是否有错误抱歉我的无知@Gotrekk,但我该如何做?如果Sheet4.Range(“G2”)=Sheet13.Range(“B154”)之后,则添加msgbox Target.Column&“&Target.Row&“-”和Sheet4.Range(“G2”)和“-”和Sheet13.Range(“B154”)(不能将整个代码转换为注释,但是)。。。如果Sheet4.Range(“G2”)=Sheet13.Range(“B154”),则调试.Print Target.Column&“-”&Target.Row&“-”&Sheet4.Range(“G2”)&Sheet13.Range(“B154”)应用程序。EnableEvents=False。。。尝试了msgbox和debug.print,但什么都没有,有什么想法@Gotrekk?
Private Sub Hide_Tiling(ByVal Target As Range)
On Error Resume Next
'if dropdown on Shee4 G2 value = Sheet13 B154, hide Sheet5.
'if not, hide Sheet6
If Target.Column = 7 And Target.Row = 2 Then
If Sheet4.Range("G2") = Sheet13.Range("B154") Then
Application.EnableEvents = False
Sheet5.Visible = False
Else
Sheet16.Visible = False
End If
End If
exitHandler:
Application.EnableEvents = True
Exit Sub
End Sub