2016-05-17 116 views
1

Microsoft Excel 2010有Sheet1,Sheet2,Sheet3。如何使用VBA隐藏工作表?

在工作表1上,页面被锁定。它包含引用Sheet3的字段。

例如,A2上的Sheet1标题为“Name”,B2具有= Sheet3!B2。

在Sheet3上,A2标题为“Name”,B2除非用户填写,否则为空白。当然,Sheet3 Cell B2会自动填充到Sheet1中。

在工作表3上,我有更多类似的字段可由用户编辑,如地址和电话号码。但是,我想通过创建隐藏Sheet3的按钮来隐藏Sheet3。我不希望通过电子邮件发送该文件的人员看到带有所有信息的Sheet3。它会混淆自动化系统。

我已经研究了所有可以找到的信息并将信息输入到特定字段后隐藏表格的一些代码,但我不确定如何将该代码应用到按钮。这个按钮的用途并不是我的所有用户都懂技术,所以这是一个让他们无需大惊小怪就可以隐藏表格的快速方法。该按钮也将在Sheet3上进行。

我发现了一个代码,可以帮助如果有人知道一些VBA将其转换为使用按钮。此代码表示B6和B7隐藏表单。我真的失去了如何使用按钮点击命令与这个几乎接近的公式。

Sub ShowHideWorksheets() 
Dim Cell As Range 
For Each Cell In Range("B6:B7") 
ActiveWorkbook.Worksheets(Cell.Value).Visible = Not 
ActiveWorkbook.Worksheets(Cell.Value).Visible 
Next Cell 
End Sub 

回答

2

差不多,尝试:

ActiveWorkbook.Worksheets(Cell.Value).Visible = xlSheetHidden 

,或者如果你想隐藏工作表,而不是让用户看到它隐藏的工作表集合中:

ActiveWorkbook.Worksheets(Cell.Value).Visible = xlSheetVeryHidden