请教excel大神,07版的命令栏如何用vba屏蔽,比如复制粘贴,有代码么?

发布网友 发布时间:2022-04-26 15:23

我来回答

2个回答

热心网友 时间:2023-10-11 15:34

给你提供个思路吧,我原来做过类似的例子,屏蔽是一种方法,还有就是遮盖,你可以画一个窗口,定义好动态坐标,总是遮挡住你想要屏蔽的部分就可以了。追问哇,这么抽象,这句话够我参透大半辈子了

追答呃~我说的太抽象了?那我再说一遍~~
你说的屏蔽要实现正常方法就是关闭功能,用钩子语句勾住键盘事件,方式复制粘贴的出现,对吧
但是还有一种变通的方法,就是遮挡。
用一个窗口(VBA是可以创建窗口的)挡在你想屏蔽区域的前面,你不是想屏蔽命令栏么?那就创建一个窗口,永远在最前面,挡在命令栏前面,让别人选不中命令栏。
据个例子,现实中你要是按键盘打字,怎么屏蔽?弄快木板钉在键盘上面,钉死了,你都碰不到键盘,怎么打字?
就是这个意思,弄个窗口,去掉关闭按钮,“钉”在命令栏上面,选不中,怎么输入?
(但是如果聪明的人可以利用Tab切换)但是对付一般人够用了

热心网友 时间:2023-10-11 15:34

防止复制,但可以看


按ALT+F11打开代码窗口

然后,选中你想要的屏蔽的工作表, 

把下面的代码复制过去就可以了

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
End Sub
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
End Sub

追问师傅,试过了,不行啊

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com