2.2.2 工作表的隐藏

浏览: 1562

在Excel工作簿文件中,我们经常需要隐藏一些数据不让别人看到,本文简单聊一下工作表的隐藏。

先明确一下概念:Excel工作簿(workbook)和工作表(worksheet),可以简单的理解为一个Excel文件是一个工作簿,里面的各个sheet为工作表(但工作簿中并不是只有工作表!!)。

打开一个新的工作簿,默认配置会包含三个工作表:

Clipboard Image.png

如上图中的Sheet1~Sheet3就是三张工作表。

右键工作表名,在弹窗中选择“插入”,可以看到:

Clipboard Image.png

除了可以插入工作表外,还可以插入图表、MS Excel4.0宏表、MS Excel5.0对话框。当然这三种结构我们几乎用不到,所以大家知道有这些结构即可。


对工作簿和工作表有了基本了解后,我们进入本文主题:

1. 工作表的隐藏与显示

首先,我们查看一下worksheet的visible属性:

有三种方法可以打开VBA界面:

1、右键工作表名(比如Sheet1),在弹窗中选择“查看代码”,打开VBA界面。

微信图片_20180801195845.png

2、按快捷键Alt+F11,打开VBA界面。

3、在开发工具选项卡中点击Visual Basic按钮打开VBA界面。

若没有开发工具选项,则先调出来:文件→选项→自定义功能区→勾选开发工具。

Clipboard Image.png


VBA界面中,随意单击选中一个工作表,如下图:

Clipboard Image.png

在Visible中可以看到三个属性:

-1 - xlSheetVisible:显示

-0 - xlSheetHidden:隐藏(但是可以右键工作表名来取消隐藏)

-2 - xlSheetVeryHidden :隐藏(不可以右键工作表名来取消隐藏

Clipboard Image.png

下面是将Sheet1的Visible属性分别设置为-0 - xlSheetHidden和-2 - xlSheetVeryHidden的效果:

Clipboard Image.png ccc.png

2. 加密隐藏

上面的方法可以普通隐藏工作表,也可以增加使用-2 - xlSheetVeryHidden隐藏的更深一些,但是还是可以通过更改Visible属性来取消隐藏。

我们可以使用“保护工作簿”的功能来加密隐藏工作表。

先隐藏一个工作表,然后在“审阅”选项卡中选择“保护工作簿”,弹出窗口中保持默认,输入自定义密码即可。

Clipboard Image.png

然后再看下图:“取消隐藏”按钮已经是灰色不可用了。若在VBA界面更改Visible属性,则会弹出错误提示。

(但是我们可以看到有个Sheet1的工作表是存在的!!!从这里可以判断是否有隐藏的工作表)

Clipboard Image.pngClipboard Image.png


3. VBA批量取消隐藏工作表

在没有加密隐藏的情况下,不管是-0 - xlSheetHidden或者-2 - xlSheetVeryHidden ,都可以使用VBA一次性的全部取消隐藏。

(提一下:加密隐藏也可以破解VBA加密,来取消隐藏,不在本文内容范围内)

Sub shtvisible()
Dim sht As Worksheet
For Each sht In Worksheets
sht.Visible = xlSheetVisible
Next
End Sub

注意VBA不区分大小写,不强制缩进,但个人建议要命名规范,缩进保持结构清晰,可以使用插件来自动缩进,详见我的博文:VBA_01_插件工具


以上,感谢你长得这么好看还关注我的博客,也请各位多多指教,有疑问欢迎留言沟通,谢谢~

推荐 1
本文由 okajun 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

3 个评论

1个月1篇!
金融科技,数据魅力!【上海站】天善智能金融行业数据应用沙龙 | 8月18日(周六) https://www.hellobi.com/event/371 这个活动记得报名,也记得喊下你同事一起来参加,金融专场,现场可以送常国珍老师新书《Python数据科学技术详解与商业实践》
okajun

okajun 回复 梁勇

好啊~嘿嘿

要回复文章请先登录注册