【问题标题】:How to Hide multiple worksheet in excel using Multiple Drop down list using VBA如何使用 VBA 使用多个下拉列表在 Excel 中隐藏多个工作表
【发布时间】:2015-02-19 14:54:28
【问题描述】:

我正在创建一个工作表,它将根据所选内容打印不同的 BOM。我在不同的工作表下的工作簿中列出了每个 BOM。主工作表将根据需要选择不同的下拉列表以创建必要的 BOM。

我想要做的是隐藏不适用于下拉列表中所选项目的工作表。

这就是我现在拥有的

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = Me.Range("Media_System").Address Then
    If Target.Value = "Shop Vac" Then
        Sheets("Shop Vac Media Port Assembly").Visible = True
        Sheets("Shop Vac Assembly").Visible = True
        Sheets("Shop Vac Piping").Visible = True
    Else
        Sheets("Shop Vac Media Port Assembly").Visible = False
        Sheets("Shop Vac Assembly").Visible = False
        Sheets("Shop Vac Piping").Visible = False
    End If
End If
End Sub

这仅适用于一个下拉列表,我目前有 (7) 个下拉列表,每个下拉列表都有不同的选项。我如何让每个人都能完成这项工作。

【问题讨论】:

    标签: excel vba show-hide worksheet


    【解决方案1】:

    您只需要根据Target 单元格地址添加更多逻辑。以下 sn-p 将处理您的范围 "Media_System" 和另一个范围。要添加与更多下拉列表对应的更多范围,只需复制和修改 If Target.Address... 块并根据需要重复。

    If Target.Address = Me.Range("Media_System").Address Then
        If Target.Value = "Shop Vac" Then
            Sheets("Shop Vac Media Port Assembly").Visible = True
            Sheets("Shop Vac Assembly").Visible = True
            Sheets("Shop Vac Piping").Visible = True
        Else
            Sheets("Shop Vac Media Port Assembly").Visible = False
            Sheets("Shop Vac Assembly").Visible = False
            Sheets("Shop Vac Piping").Visible = False
        End If
    End If
    'MODIFY & REPEAT AS NEEDED
    If Target.Address = Me.Range("SOME_OTHER_RANGE").Address Then
        If Target.Value = "Some other thing" Then
            Sheets("foo").Visible = True
            Sheets("bar").Visible = True
            Sheets("boo").Visible = True
        Else
            Sheets("foo").Visible = False
            Sheets("bar").Visible = False
            Sheets("boo").Visible = False
        End If
    End If
    

    【讨论】:

    • 我还需要在脚本开头使用 Private Sub Worksheet_Change(ByVal Target As Range) 吗?
    猜你喜欢
    • 2019-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多