用于取消隐藏或隐藏工作表的Excel VBA,有条件地基于单元格值

时间:2017-06-07 20:34:30

标签: excel excel-vba vba

我曾多次尝试为此制定代码,甚至尝试了一些我在本网站上找到的代码串,但我一直无法找到解决方案。

我的目标是当用户选择"是"时,隐藏的工作表会弹出为隐藏状态。从另一个工作表上的单元格下拉菜单中,用户可以输入他们的笔记然后如果单元格是以N / A填充,或者(选择)是否保留工作表。

有人可以帮忙吗?

以下是我尝试的最新代码:

Sheets("Prop. Pres. Notes 206-261").Activate
If Range("G39").Value = "YES" Then
Sheets("Prop. Pres. Notes 206-261").Visible = True
Else
Sheets("Prop. Pres. Notes 206-261").Visible = False
End If

2 个答案:

答案 0 :(得分:0)

将其放在主Excel中的Microsoft Excel对象

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$G$39" Then
        'Change Sheet1 to the name of your main sheet
        If ActiveWorkbook.Worksheets("Sheet1").Range("G39").Value = "YES" Then
            Sheets("Prop. Pres. Notes 206-261").Visible = True
        Else
            Sheets("Prop. Pres. Notes 206-261").Visible = False
        End If
    End If
End Sub

答案 1 :(得分:0)

您尚未提及Range("G39")上的工作表 如果它在Sheet1上尝试比较小写字符串:

Sheets("Prop. Pres. Notes 206-261").Visible = LCase(Sheets(1).Range("G39").Value2) = "yes"