ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: andysky

[嘿嘿]工作簿禁止复制/粘贴/删除/双击

[复制链接]

TA的精华主题

TA的得分主题

发表于 2010-7-21 22:47 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
学习了

TA的精华主题

TA的得分主题

发表于 2010-8-21 00:56 | 显示全部楼层
Sub auto_open()
    Dim Menu As CommandBarControl, SubMenu As CommandBarControl
    Set SubMenu = Application.CommandBars("tools").Controls.Add(msoControlPopup, 1, , 3, 1)
    SubMenu.Caption = "禁止复制与删除(&UnCopy)"
     With SubMenu.Controls.Add(msoControlButton, 1, , , True)
        .Caption = "禁止复制与删除(&Computer)"
        .OnAction = "禁止"
        .Style = msoButtonIconAndCaption
        .FaceId = 225
      End With
'-----------------------------------------
      With SubMenu.Controls.Add(msoControlButton, 1, , , True)
        .Caption = "恢复复制与删除(&Enable)"
        .OnAction = "恢复"
        .Style = msoButtonIconAndCaption
        .FaceId = 277
      End With
      With SubMenu.Controls.Add(msoControlButton, 1, , , True)
        .Caption = "使用说明(&About)"
        .OnAction = "关于复制"
        .Style = msoButtonIconAndCaption
        .FaceId = 272
      End With
  End Sub
Sub auto_close()
Application.CommandBars("tools").Reset
End Sub
Sub EnableControl(iId As Integer, blnState As Boolean)
Dim ComBar As CommandBar
Dim ComBarCtrl As CommandBarControl
  On Error Resume Next
For Each ComBar In Application.CommandBars
    Set ComBarCtrl = ComBar.FindControl(ID:=iId, recursive:=True)
    If Not ComBarCtrl Is Nothing Then ComBarCtrl.Visible = blnState
Next
End Sub


Sub 恢复()
If Application.InputBox("请输入密码:", "权限验证", "不知道", Type:=1) <> 119 Then MsgBox "你没有操作权限": Exit Sub

Dim ComBar As CommandBar
Dim ComBarCtrl As CommandBarControl
    EnableControl 295, True  '// ..cells
    EnableControl 296, True  '// ..Rows
    EnableControl 297, True  '// ..Cols
    EnableControl 6002, True  '// ..Cols
    '// &Delete...
    EnableControl 478, True  '// &Delete...
    EnableControl 292, True  '// &Delete...
    EnableControl 293, True  '// ...Row
    EnableControl 294, True  '// ...Column
    EnableControl 847, True  '// RightClick Tab..
    '// Clear
    EnableControl 3125, True  '// Clear Contents
    EnableControl 1964, True  '// All
    EnableControl 872, True   '// Formats
    EnableControl 873, True   '// Contents
    EnableControl 874, True   '// Comments
    '// CutCopyPaste
    EnableControl 21, True    '// cut
    EnableControl 19, True    '// copy
    EnableControl 22, True    '// paste
    EnableControl 755, True   '// pastespecial
    EnableControl 809, True   '// pastespecial
Application.CommandBars("cell").Controls(4).Enabled = True
    '// ShortCut Keys
    With Application
        .OnKey "^c"
        .OnKey "^v"
        .OnKey "^x"
        .OnKey "+{DEL}"
        .OnKey "+{INSERT}"
        .OnKey "{del}"
        .CellDragAndDrop = True
        .OnDoubleClick = ""
    End With
End Sub
Sub info()
MsgBox "禁止复制、剪贴、删除、插入、拖拉式填充、双击修改单元格!!!", 64, "友情提示"
End Sub
Sub 关于复制()
MsgBox "本工具可以禁用以下菜单:" & Chr(10) & _
"【复制  剪切  粘贴  选择性粘贴  删除  插入  清除内容  双击  填充】" & Chr(10) _
& "在控选项面板可以禁用功能,但要恢复菜单和快捷键却要密码。" & Chr(10) & _
"请各位用户自己记住密码,同时不要外泄。" & Chr(10) _
& "本工具仅仅提供对VBA盲的防范,对高手是没用的。" & Chr(10) _
& "使用时将你的工作表移动到本工作簿然后禁用菜单与快捷键再寄给别人使用。", 64, "andysky"
End Sub
Sub 禁止()
UserForm1.Show 0
End Sub

终于让我打开了。。。。不好意思呀

TA的精华主题

TA的得分主题

发表于 2010-8-21 21:57 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-10-7 09:18 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
该方法对excel2007已经无效了。

TA的精华主题

TA的得分主题

发表于 2010-10-14 13:55 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-10-14 17:35 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-10-14 23:21 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-11-14 16:52 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2011-4-17 15:54 | 显示全部楼层
原帖由 随心所欲 于 2010-7-21 22:13 发表
几天了,版主也不来看看

不能完全的恢复,右键的插入功能没有了,只能用excel的帮助修复功能才能完全恢复!!

TA的精华主题

TA的得分主题

发表于 2011-6-28 22:46 | 显示全部楼层
“插入行”功能不能恢复!!!

要如何才能恢复啊????帮帮忙啊。

我觉得这个程序就跟个病毒差不多。没有实际意义,如果人家禁用VBA,不运行你这个程序,就没什么用处了。恢复还需要密码?何不关闭工作薄时自动恢复呢?
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-2-19 07:08 , Processed in 0.023361 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表