龙空技术网

Excel|工作簿、工作表的隐藏(包括深度隐藏)、保护及取消

小智雅汇 661

前言:

当前我们对“vbnet表格数据checkbox”可能比较注意,我们都想要剖析一些“vbnet表格数据checkbox”的相关资讯。那么小编在网络上汇集了一些有关“vbnet表格数据checkbox””的相关知识,希望各位老铁们能喜欢,各位老铁们一起来了解一下吧!

工作簿、工作表的隐藏、保护及取消,是矛与盾关系。在工作中,既可以简化数据管理保护数据,又可以破解别人对数据的保护。

1 工作表的显示与隐藏

日常工作中我们发给别人报表,有些工作表不希望别人看到,但又不想删掉,单击工作表标签,右键,选择“隐藏”,工作表就隐藏了,相反如果选择“取消隐藏”就可以看到隐藏的所有工作表。

上述方式通过“取消隐藏”还是可以看到隐藏的内容。怎样才能将工作表深度隐藏呢?

选中要彻底隐藏的工作表,单击“开发工具”下面的“查看代码”,在VBA编辑界面修改Visible属性,选择2-xlSheetVeryHidden:

对于隐藏的工作表的工作表,在标签栏内不可见,“视图”→“取消隐藏”对于深度隐藏的工作表也不起作用。此时,可以在VBE环境下的”资源管理器“可以查看到深度隐藏的工作表标签,按F4查看对象属性,设置“Visible”属性为“-1 - xlSheetVisible”。

工作表的隐藏与取消隐藏操作也可以用VBA代码操作:

Sub VeryHideActiveSht()  ' 隐藏活动工作表    Dim i As Long    Dim sht As Worksheet        For Each sht In Worksheets        If sht.Visible = xlSheetVisible Then i = i + 1    Next        If i > 1 Then        ActiveSheet.Visible = xlSheetVeryHidden    Else        MsgBox "至少要保证有一个可见工作表。", vbCritical    End IfEnd SubSub VeryHideExceptActiveSht() ' 隐藏活动工作表以外的其它工作表    Dim sht As Worksheet        For Each sht In Worksheets        If sht.Name <> ActiveSheet.Name Then sht.Visible = xlSheetVeryHidden    NextEnd SubSub UnHideAllSht()        ' 取消全部工作表隐藏    Dim sht As Worksheet        For Each sht In Worksheets        sht.Visible = xlSheetVisible    NextEnd SubSub hideSheet()             '保留前面k个工作表,其它全部深度隐藏    Dim k As Integer    k = 4    Dim n, i As Integer     '统计当前工作簿中的工作表数目    n = Worksheets.Count    '通过循环,取消隐藏所有的工作表    For i = k + 1 To n        Worksheets(i).Visible = 2 '1 取消隐藏,2 是xlSheetVeryHidden    Next iEnd SubSub showAllSheet()          ' 取消全部工作表隐藏    Dim n, i As Integer     '统计当前工作簿中的工作表数目    n = Worksheets.Count    '通过循环,取消隐藏所有的工作表    For i = 1 To n        Worksheets(i).Visible = 1    Next iEnd Sub
2 Excel工作表和工作簿的保护2.1 保护工作表

通过设置单元格的“锁定”状态,并使用“保护工作表”功能,可以禁止对单元格的编辑,此部分在实际工作中,对单元格内容的编辑,只是工作表编辑方式中的一项,除此以外,Excel允许用户设置更明确的保护方案。

2.1.1 设置工作表的可用编辑方式

单击“审阅”选项卡中的“保护工作表”按钮,可以执行对工作表的保护。

在弹出的“保护工作表”对话框中有很多选项。它们决定了当前工作表在进入保护状态后,除了禁止编辑锁定单元格以外,还可以设定允许进行的其他操作。

2.1.2 凭密码或权限编辑工作表的不同区域

Excel的“保护工作表”功能默认情况下作用于整张工作表,如果希望对工作表中的不同区域设置独立的密码或权限来进行保护,可以按下面的方法来操作。

Step1 单击“审阅”选项卡中的“允许用户编辑区域”按钮,弹出“允许用户编辑区域”对话框。

Step2 在此对话框中单击“新建”按钮,弹出“新区域”对话框。可以在“标题”栏中输入区域名称(或使用系统默认名称),然后在“引用单元格”栏中输入或选择区域的范围,再输入区域密码。

如果要针对指定计算机用户(组)设置权限,可以单击“权限”按钮,在弹出的“区域1的权限”对话框中进行设置。

Step3 单击“新区域”对话框的“确定”按钮,在根据提示重复输入密码后,返回“允许用户编辑区域”对话框。今后,用户可凭此密码对上面所选定的单元格和区域进行编辑操作。此密码与工作表保护密码可以完全不同。

Step4 如果需要,使用同样的方法可以创建多个使用不同密码访问的区域。

Step5 在“允许用户编辑区域”对话框中单击“保护工作表”按钮,执行工作表保护。

完成以上单元格保护设置后,在试图对保护的单元格或区域内容进行编辑操作时,会弹出“取消锁定区域”对话框,要求用户提供针对该区域的保护密码。只有在输入正确密码后才能对其进行编辑。

如果在Step2中设置了指定用户(组)对某区域拥有“允许”的权限,则该用户或用户组成员可以直接编辑此区域,不会再弹出要求输入密码的提示。

2.2 保护工作簿

Excel允许对整个工作簿进行保护,这种保护分为两种方式。一种是保护工作簿的结构和窗口,另一种则是加密工作簿,设置打开密码。

2.2.1 保护工作簿结构和窗口

在“审阅”选项卡上单击“保护工作簿”按钮,弹出“保护结构和窗口”对话框。在此对话框中,用户可为当前工作簿设置两项保护内容。

保护工作簿结构:把此复选框打钩后,禁止在当前工作簿中插入、删除、移动、复制、隐藏或取消隐藏工作表,禁止重新命名工作表。

保护工作簿窗口:把此复选框打钩后,当前工作簿的窗口按钮不再显示,禁止新建、放大、缩小、移动或拆分工作簿窗口,“全部重排”命令也对此工作簿不再有效。

根据需要把相应的复选框打钩后,单击“确定”按钮即可。如有必要,可以设置密码,此密码与工作表保护密码和工作簿打开密码没有任何关系。

2.2.2 加密工作簿

如果希望限定必须使用密码才能打开工作簿,除了在工作簿另存为操作时进行设置外,也可以在工作簿处于打开状态时进行设置。单击“文件”,在下拉列表中单击“信息”,然后在右侧依次单击保护工作簿→用密码进行加密,将弹出“用密码进行加密”对话框。输入密码,单击确定后,Excel会要求再次输入密码进行确认。确认密码后,此工作簿下次被打开时将提示输入密码,如果不能输入正确的密码,Excel将无法打开此工作簿。

如果要解除工作簿的打开密码,可以按上述步骤再次打开加密文档对话框,删除现有密码即可。

-End-

标签: #vbnet表格数据checkbox