咔片PPT · AI自动生成演示文稿,模板丰富、排版精美 讯飞智文 · 一键生成PPT和Word,高效应对学习与办公

excel中批量保护或者隐藏工作表效果:当更改b或者d列的条件,对应的工作表就被隐藏或者保护!经常需要将工作表发给老板或者同事,有的表又不想让他们编辑,赶快使用这招保护你的工作表吧:

第一步:批量提取工作表,可以做后续的工作表创建目录链接

按ALT+F11进入vba编辑器,右键插入一个模块,输入以下代码:

Sub 提取表名()

Application.ScreenUpdating = False '取消屏幕更新

Dim i As Integer '定义变量

Sheet9.Cells(1, 3) = "表名" '目录(sheet9)中C1中输入“表名称”

For i = 2 To Sheets.Count '从第2个到最后一个表

Sheet9.Cells(i, 3) = Sheets(i).Name '一直循环取表名放在c列

Next

MsgBox ("提取完毕") '弹出提示框

Application.ScreenUpdating = True '屏幕可以更新

End Sub

二、指定宏,插入一个命令按钮

三、批量隐藏工作表

Sub 隐藏或者取消隐藏()

Application.DisplayAlerts = False

Dim sht As Worksheet

Dim i, irow As Integer

irow = Sheet9.Range("c65536").End(xlUp).Row '确定c列最后一个空行行号

For i = 2 To irow

If Sheet9.Range("b" & i) = "隐藏" Then

For Each sht In Sheets

If sht.Name = Sheet9.Range("c" & i) Then '判断c列中如果有隐藏

sht.Visible = 0 '工作表可见性为0即隐藏

End If

Next

ElseIf Sheet9.Range("b" & i) = "" Then

For Each sht In Sheets

If sht.Name = Sheet9.Range("c" & i) Then

sht.Visible = -1 '如果为空就取消隐藏

End If

Next

End If

Application.DisplayAlerts = True

Next

End Sub

如果是要批量保护或者取消保护就可以修改代码

四、调用宏代码,更改工作表事件

为了防止我们每一次更改条件后都要去执行代码,我们可以在目录表中修改工作事件为【change】就是当这个表中发生了变化就自动帮我们执行保护或者隐藏工作表的代码!

Private Sub Worksheet_Change(ByVal Target As Range)

Call 隐藏或者取消隐藏

Call 保护或者取消保护

End Sub

最后一步步就是将工作表保存为启用宏的工作簿!不然我们写的代码不能保存啦!

WPS小技巧:一键取消隐藏的工作表

Excel中按照条件拆分工作表,我不要在写复杂的函数或者代码了

Excel多表合并与查询,你也试试吧