标题:禁止宏隐藏非"空白"工作表如发实现?
只看楼主
VB白白
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2023-4-24
结帖率:50%
已结贴  问题点数:8 回复次数:4 
禁止宏隐藏非"空白"工作表如发实现?
为什么移动复制进新的工作表后,原来的禁止宏后隐藏"空白"工作表代码无法使用了?没移动或复制进新表的时候可以用,将移动复制进来的新表删除也无法实现隐藏功能了,求大神是什么问题呢?[quote][/quo
te]
搜索更多相关主题的帖子:  工作表 禁止 空白 隐藏 
2023-05-05 16:25
阳光上的桥
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:25
帖 子:82
专家分:525
注 册:2023-1-12
得分:4 
一、上面代码应先显示名称为“空白”的工作表,还应该考虑如果没有这个表的时候怎么处理(可能需要添加一个表改名为“空白”),因为隐藏所有表会报错。

程序代码:
Dim sh as WorkSheet
On Error Resume Next
Set sh = Nothing
Set sh = Sheets("空白")
On Error Goto 0
If sh is Nothing Then 
    Set sh = Sheets.Add
    sh.Name = "空白"
End If
sh.Visible = False


二、如果禁用了宏,这些代码都不会执行。

三,由于代码是在工作簿里面的,复制工作表到别的工作簿不会把宏带过去。
2023-05-05 17:17
东海ECS
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:Python
等 级:版主
威 望:19
帖 子:376
专家分:1454
注 册:2023-1-24
得分:4 
把代码贴出来不要发图片

会当凌绝顶,一览众山小.
2023-05-05 19:08
VB白白
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2023-4-24
得分:0 
回复 2楼 阳光上的桥
我是把别的工作簿里的表复制移动到有这代码的工作簿里,里面也有空白表,单是不执行,原来没有新表移动进来的时候代码还能执行复制移动新表进来以后就不执行了,是不是表太多了还是哪里的问题呢?
2023-05-06 08:51
VB白白
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2023-4-24
得分:0 
回复 3楼 东海ECS


Private Sub Workbook_BeforeClose(Cancel As Boolean )
Sheet1.Uisible = True
For Each sh In ThisWorkbook.sheets
IF sh.Name<>"空白·Then
 sh.visible = x1SheetUeryHidden
End If
next
ActiveWorkbook.Saved=True
 End Sub

Private Sub Workbook Open()
For Each sh In ThisWorkbook Sheets
If sh.Name<>"空白"Then
sh Visible=xSheetVisible
End If
Next
Sheet1.visible =x1SheetVeryHidden
Application.isible-False隐藏工作薄
UserForm1.Show"打开登录窗体
End sub
请大神帮忙看看指点指点哪里出了问题,谢谢
2023-05-06 09:03



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-512106-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.050659 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved