1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
| Private Declare Function CloseClipboard Lib "user32" () As Long
Private Declare Function OpenClipboard Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function EmptyClipboard Lib "user32" () As Long
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
OpenClipboard 0
EmptyClipboard
CloseClipboard
End Sub
Private Sub InterdireCopierCouper()
On Error Resume Next
With Application
'disables shortcut keys
.OnKey "^c", ""
.OnKey "^v", ""
.OnKey "^x", ""
.CellDragAndDrop = False
.ExtendList = False
.CutCopyMode = False
'Disables Copier
.CommandBars("Edit").FindControl(ID:=19).Enabled = False 'Edition
.CommandBars("Cell").FindControl(ID:=19).Enabled = False 'Cellule menu contextuel
.CommandBars("Column").FindControl(ID:=19).Enabled = False 'Colonne
.CommandBars("Row").FindControl(ID:=19).Enabled = False 'Ligne
.CommandBars("Button").FindControl(ID:=19).Enabled = False 'Bouton
.CommandBars("Formula Bar").FindControl(ID:=19).Enabled = False 'Barre des formules
.CommandBars("Worksheet Menu Bar").FindControl(ID:=19).Enabled = False 'Barre de menu feuille de calcul excel
.CommandBars("Standard").FindControl(ID:=19).Enabled = False 'Barre de menu standard
.CommandBars("Ply").FindControl(ID:=19).Enabled = False 'Onglet
'Disables Couper
.CommandBars("Edit").FindControl(ID:=21).Enabled = False
.CommandBars("Cell").FindControl(ID:=21).Enabled = False
.CommandBars("Column").FindControl(ID:=21).Enabled = False
.CommandBars("Row").FindControl(ID:=21).Enabled = False
.CommandBars("Button").FindControl(ID:=21).Enabled = False
.CommandBars("Formula Bar").FindControl(ID:=21).Enabled = False
.CommandBars("Worksheet Menu Bar").FindControl(ID:=21).Enabled = False
.CommandBars("Standard").FindControl(ID:=21).Enabled = False
.CommandBars("Ply").FindControl(ID:=21).Enabled = False
'Disable Paste 'Coller
.CommandBars("Edit").FindControl(ID:=22).Enabled = False
.CommandBars("Cell").FindControl(ID:=22).Enabled = False
.CommandBars("Column").FindControl(ID:=22).Enabled = False
.CommandBars("Row").FindControl(ID:=22).Enabled = False
.CommandBars("Button").FindControl(ID:=22).Enabled = False
.CommandBars("Formula Bar").FindControl(ID:=22).Enabled = False
.CommandBars("Worksheet Menu Bar").FindControl(ID:=22).Enabled = False
.CommandBars("Standard").FindControl(ID:=22).Enabled = False
.CommandBars("Ply").FindControl(ID:=22).Enabled = False
'Disable PasteSpecial 'Collage spécial
.CommandBars("Edit").FindControl(ID:=108).Enabled = False
.CommandBars("Cell").FindControl(ID:=108).Enabled = False
.CommandBars("Column").FindControl(ID:=108).Enabled = False
.CommandBars("Row").FindControl(ID:=108).Enabled = False
.CommandBars("Button").FindControl(ID:=108).Enabled = False
.CommandBars("Formula Bar").FindControl(ID:=108).Enabled = False
.CommandBars("Worksheet Menu Bar").FindControl(ID:=108).Enabled = False
.CommandBars("Standard").FindControl(ID:=108).Enabled = False
.CommandBars("Ply").FindControl(ID:=108).Enabled = False
End With
End Sub
Private Sub RetablirCopierCouper()
On Error Resume Next
With Application
.OnKey "^c"
.OnKey "^v"
.OnKey "^x"
.CellDragAndDrop = True
.ExtendList = True
.CutCopyMode = True
'Enables Copier
.CommandBars("Edit").FindControl(ID:=19).Enabled = True 'Edition
.CommandBars("Cell").FindControl(ID:=19).Enabled = True 'Cellule
.CommandBars("Column").FindControl(ID:=19).Enabled = True 'Colonne
.CommandBars("Row").FindControl(ID:=19).Enabled = True 'Ligne
.CommandBars("Button").FindControl(ID:=19).Enabled = True 'Bouton
.CommandBars("Formula Bar").FindControl(ID:=19).Enabled = True
.CommandBars("Worksheet Menu Bar").FindControl(ID:=19).Enabled = True
.CommandBars("Standard").FindControl(ID:=19).Enabled = True
.CommandBars("Ply").FindControl(ID:=19).Enabled = True 'onglet
'Enables Couper
.CommandBars("Edit").FindControl(ID:=21).Enabled = True
.CommandBars("Cell").FindControl(ID:=21).Enabled = True
.CommandBars("Column").FindControl(ID:=21).Enabled = True
.CommandBars("Row").FindControl(ID:=21).Enabled = True
.CommandBars("Button").FindControl(ID:=21).Enabled = True
.CommandBars("Formula Bar").FindControl(ID:=21).Enabled = True
.CommandBars("Worksheet Menu Bar").FindControl(ID:=21).Enabled = True
.CommandBars("Standard").FindControl(ID:=21).Enabled = True
.CommandBars("Ply").FindControl(ID:=21).Enabled = True
'Enables Paste 'Coller
.CommandBars("Edit").FindControl(ID:=22).Enabled = True
.CommandBars("Cell").FindControl(ID:=22).Enabled = True
.CommandBars("Column").FindControl(ID:=22).Enabled = True
.CommandBars("Row").FindControl(ID:=22).Enabled = True
.CommandBars("Button").FindControl(ID:=22).Enabled = True
.CommandBars("Formula Bar").FindControl(ID:=22).Enabled = True
.CommandBars("Worksheet Menu Bar").FindControl(ID:=22).Enabled = True
.CommandBars("Standard").FindControl(ID:=22).Enabled = True
.CommandBars("Ply").FindControl(ID:=22).Enabled = True
'Disable PasteSpecial 'Collage spécial
.CommandBars("Edit").FindControl(ID:=108).Enabled = True
.CommandBars("Cell").FindControl(ID:=108).Enabled = True
.CommandBars("Column").FindControl(ID:=108).Enabled = True
.CommandBars("Row").FindControl(ID:=108).Enabled = True
.CommandBars("Button").FindControl(ID:=108).Enabled = True
.CommandBars("Formula Bar").FindControl(ID:=108).Enabled = True
.CommandBars("Worksheet Menu Bar").FindControl(ID:=108).Enabled = True
.CommandBars("Standard").FindControl(ID:=108).Enabled = True
.CommandBars("Ply").FindControl(ID:=108).Enabled = True
End With
End Sub
Private Sub Workbook_Open()
Call InterdireCopierCouper
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call RetablirCopierCouper
End Sub
Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
Cancel = True
End Sub
Private Sub Workbook_SheetBeforeClose(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
Cancel = False
End Sub |
Partager