在Excel中限制使用粘貼功能,可以有效防止用戶將外部的數據復制粘貼到本工作薄。
以下是實現在Excel中使用粘貼功能的方法。
一、實現原理
使用VBA代碼來實現,實現的理論指導是:
禁用編輯菜單中的粘貼功能
禁用編輯菜單中的選擇性粘貼功能
限制使用右鍵菜單中的粘貼功能
限制使用鍵盤上的快捷鍵Ctrl+V鍵
二、實現方法
①禁用粘貼功能的代碼
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Application.CommandBars("Worksheet Menu Bar").Controls("編輯(E)").Controls("粘貼(P)").Enabled = False
Application.CommandBars("cell").Controls(3).Enabled = False
Application.CommandBars("Worksheet Menu Bar").Controls("編輯(E)").Controls("選擇性粘貼(S)...").Enabled = False
Application.OnKey "^v", ""
End Sub
②解除粘貼功能的限制
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.CommandBars("Worksheet Menu Bar").Controls("編輯(E)").Controls("粘貼(P)").Enabled = True
Application.CommandBars("cell").Controls(3).Enabled = True
Application.CommandBars("Worksheet Menu Bar").Controls("編輯(E)").Controls("選擇性粘貼(S)...").Enabled = True
Application.OnKey "^v"
End Sub