2023年11月25日发(作者:)

剪切复制粘贴功能的禁止

1:禁止复制的所有功能

EXCEL中禁止复制数据,只需用VBA禁用excel的复制功能就行了。代码如下:

代码放在thisworkbook

Private Sub Workbook_BeforeClose(Cancel As Boolean)

With Application

.CommandBars("Edit").Controls("复制(&c)").Enabled = True

.CommandBars("Standard").Controls("复制(&c)").Enabled = True

.CommandBars("Cell").Controls("复制(&c)").Enabled = True

.CommandBars("ply").Enabled = True

End With

End Sub

Private Sub Workbook_Open()

With Application

.OnKey key:="^c", procedure:="dd" '使用ctrl+c则运行dd

.CommandBars("Edit").Controls("复制(&c)").Enabled = False '复制菜单按钮失效

.CommandBars("Standard").Controls("复制(&c)").Enabled = False '复制工具按钮失效

.CommandBars("Cell").Controls("复制(&c)").Enabled = False '右键菜单复制按钮失效

.CommandBars("ply").Enabled = False '工作表标签右键菜单失效

End With

End Sub

'下列代码放在模块中

Sub dd()

MsgBox "呵呵!不能复制哦!"

End Sub

2:关闭所有剪切、复制和粘贴功能

只能用宏来解决:

在【工具】里找到【宏】,找【VB编辑器】

打开后,在右边空白处输入下面内容:

Sub Copy()

With Application

'屏蔽常用工具栏剪切、复制、粘贴

.CommandBars(3).Controls("剪切(&T)").Enabled = False

.CommandBars(3).Controls("复制(&C)").Enabled = False

.CommandBars(3).Controls("粘贴(&P)").Enabled = False

'屏蔽单元格右键菜单中的剪切、复制、粘贴命令

.CommandBars("Cell").Controls("剪切(&T)").Enabled = False

.CommandBars("Cell").Controls("复制(&C)").Enabled = False

.CommandBars("Cell").Controls("粘贴(&P)").Enabled = False

'屏蔽编辑菜单中的剪切、复制、粘贴命令

.CommandBars(1).Controls("编辑(&E)").Controls("剪切(&T)").Enabled = False

.CommandBars(1).Controls("编辑(&E)").Controls("复制(&C)").Enabled = False

.CommandBars(1).Controls("编辑(&E)").Controls("粘贴(&P)").Enabled = False

'屏蔽键盘剪切、复制、粘贴键

.OnKey "^x", ""

.OnKey "^c", ""

.OnKey "^v", ""

End With

End Sub