je sais pas si c'est possible mais j'aimerai interdire de
faire des copier coller (ou des couper coller) sur un de
mes fichiers excel(et pas sur les autres). Si quelqu'un
sait faire je lui serai reconnaissant.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
ChrisV
Bonjour Aurel,
Dans la feuille de code de ThisWorkbook du fichier concerné...
Private Sub Workbook_Activate() On Error Resume Next With Application .OnKey "^c", "" .OnKey "^v", "" .OnKey "^x", "" .OnKey "^{INSERT}", "" .OnKey "+{INSERT}", "" .OnKey "+{DEL}", "" .CommandBars("Edit").FindControl(ID:).Enabled = False .CommandBars("Edit").FindControl(ID:8).Enabled = False .CommandBars("Cell").FindControl(ID:).Enabled = False .CommandBars("Column").FindControl(ID:).Enabled = False .CommandBars("Row").FindControl(ID:).Enabled = False .CommandBars("Button").FindControl(ID:).Enabled = False .CommandBars("Formula Bar").FindControl(ID:).Enabled = False .CommandBars("Worksheet Menu Bar").FindControl(ID:).Enabled = False .CommandBars("Standard").FindControl(ID:).Enabled = False .CommandBars("Button").FindControl(ID:8).Enabled = False .CommandBars("Formula Bar").FindControl(ID:8).Enabled = False .CommandBars("Worksheet Menu Bar").FindControl(ID:8).Enabled = False .CommandBars("Standard").FindControl(ID:8).Enabled = False .CommandBars("Ply").FindControl(ID:8).Enabled = False .CommandBars("Edit").FindControl(ID:!).Enabled = False .CommandBars("Cell").FindControl(ID:!).Enabled = False .CommandBars("Column").FindControl(ID:!).Enabled = False .CommandBars("Row").FindControl(ID:!).Enabled = False .CommandBars("Button").FindControl(ID:!).Enabled = False .CommandBars("Formula Bar").FindControl(ID:!).Enabled = False .CommandBars("Worksheet Menu Bar").FindControl(ID:!).Enabled = False .CommandBars("Standard").FindControl(ID:!).Enabled = False End With End Sub
Private Sub Workbook_Deactivate() On Error Resume Next With Application .OnKey "^c" .OnKey "^v" .OnKey "^x" .OnKey "^{INSERT}" .OnKey "+{INSERT}" .OnKey "+{DEL}" .CommandBars("Edit").FindControl(ID:).Enabled = True .CommandBars("Edit").FindControl(ID:8).Enabled = True .CommandBars("Cell").FindControl(ID:).Enabled = True .CommandBars("Column").FindControl(ID:).Enabled = True .CommandBars("Row").FindControl(ID:).Enabled = True .CommandBars("Button").FindControl(ID:).Enabled = True .CommandBars("Formula Bar").FindControl(ID:).Enabled = True .CommandBars("Worksheet Menu Bar").FindControl(ID:).Enabled = True .CommandBars("Standard").FindControl(ID:).Enabled = True .CommandBars("Button").FindControl(ID:8).Enabled = True .CommandBars("Formula Bar").FindControl(ID:8).Enabled = True .CommandBars("Worksheet Menu Bar").FindControl(ID:8).Enabled = True .CommandBars("Standard").FindControl(ID:8).Enabled = True .CommandBars("Ply").FindControl(ID:8).Enabled = True .CommandBars("Edit").FindControl(ID:!).Enabled = True .CommandBars("Cell").FindControl(ID:!).Enabled = True .CommandBars("Column").FindControl(ID:!).Enabled = True .CommandBars("Row").FindControl(ID:!).Enabled = True .CommandBars("Button").FindControl(ID:!).Enabled = True .CommandBars("Formula Bar").FindControl(ID:!).Enabled = True .CommandBars("Worksheet Menu Bar").FindControl(ID:!).Enabled = True .CommandBars("Standard").FindControl(ID:!).Enabled = True End With End Sub
ChrisV
"aurel" a écrit dans le message de news: be7f01c3ecc4$ecf96ba0$
Bonjour
je sais pas si c'est possible mais j'aimerai interdire de faire des copier coller (ou des couper coller) sur un de mes fichiers excel(et pas sur les autres). Si quelqu'un sait faire je lui serai reconnaissant.
Merci
Bonjour Aurel,
Dans la feuille de code de ThisWorkbook du fichier concerné...
Private Sub Workbook_Activate()
On Error Resume Next
With Application
.OnKey "^c", ""
.OnKey "^v", ""
.OnKey "^x", ""
.OnKey "^{INSERT}", ""
.OnKey "+{INSERT}", ""
.OnKey "+{DEL}", ""
.CommandBars("Edit").FindControl(ID:).Enabled = False
.CommandBars("Edit").FindControl(ID:8).Enabled = False
.CommandBars("Cell").FindControl(ID:).Enabled = False
.CommandBars("Column").FindControl(ID:).Enabled = False
.CommandBars("Row").FindControl(ID:).Enabled = False
.CommandBars("Button").FindControl(ID:).Enabled = False
.CommandBars("Formula Bar").FindControl(ID:).Enabled = False
.CommandBars("Worksheet Menu Bar").FindControl(ID:).Enabled = False
.CommandBars("Standard").FindControl(ID:).Enabled = False
.CommandBars("Button").FindControl(ID:8).Enabled = False
.CommandBars("Formula Bar").FindControl(ID:8).Enabled = False
.CommandBars("Worksheet Menu Bar").FindControl(ID:8).Enabled = False
.CommandBars("Standard").FindControl(ID:8).Enabled = False
.CommandBars("Ply").FindControl(ID:8).Enabled = False
.CommandBars("Edit").FindControl(ID:!).Enabled = False
.CommandBars("Cell").FindControl(ID:!).Enabled = False
.CommandBars("Column").FindControl(ID:!).Enabled = False
.CommandBars("Row").FindControl(ID:!).Enabled = False
.CommandBars("Button").FindControl(ID:!).Enabled = False
.CommandBars("Formula Bar").FindControl(ID:!).Enabled = False
.CommandBars("Worksheet Menu Bar").FindControl(ID:!).Enabled = False
.CommandBars("Standard").FindControl(ID:!).Enabled = False
End With
End Sub
Private Sub Workbook_Deactivate()
On Error Resume Next
With Application
.OnKey "^c"
.OnKey "^v"
.OnKey "^x"
.OnKey "^{INSERT}"
.OnKey "+{INSERT}"
.OnKey "+{DEL}"
.CommandBars("Edit").FindControl(ID:).Enabled = True
.CommandBars("Edit").FindControl(ID:8).Enabled = True
.CommandBars("Cell").FindControl(ID:).Enabled = True
.CommandBars("Column").FindControl(ID:).Enabled = True
.CommandBars("Row").FindControl(ID:).Enabled = True
.CommandBars("Button").FindControl(ID:).Enabled = True
.CommandBars("Formula Bar").FindControl(ID:).Enabled = True
.CommandBars("Worksheet Menu Bar").FindControl(ID:).Enabled = True
.CommandBars("Standard").FindControl(ID:).Enabled = True
.CommandBars("Button").FindControl(ID:8).Enabled = True
.CommandBars("Formula Bar").FindControl(ID:8).Enabled = True
.CommandBars("Worksheet Menu Bar").FindControl(ID:8).Enabled = True
.CommandBars("Standard").FindControl(ID:8).Enabled = True
.CommandBars("Ply").FindControl(ID:8).Enabled = True
.CommandBars("Edit").FindControl(ID:!).Enabled = True
.CommandBars("Cell").FindControl(ID:!).Enabled = True
.CommandBars("Column").FindControl(ID:!).Enabled = True
.CommandBars("Row").FindControl(ID:!).Enabled = True
.CommandBars("Button").FindControl(ID:!).Enabled = True
.CommandBars("Formula Bar").FindControl(ID:!).Enabled = True
.CommandBars("Worksheet Menu Bar").FindControl(ID:!).Enabled = True
.CommandBars("Standard").FindControl(ID:!).Enabled = True
End With
End Sub
ChrisV
"aurel" <anonymous@discussions.microsoft.com> a écrit dans le message de
news: be7f01c3ecc4$ecf96ba0$a501280a@phx.gbl...
Bonjour
je sais pas si c'est possible mais j'aimerai interdire de
faire des copier coller (ou des couper coller) sur un de
mes fichiers excel(et pas sur les autres). Si quelqu'un
sait faire je lui serai reconnaissant.
Dans la feuille de code de ThisWorkbook du fichier concerné...
Private Sub Workbook_Activate() On Error Resume Next With Application .OnKey "^c", "" .OnKey "^v", "" .OnKey "^x", "" .OnKey "^{INSERT}", "" .OnKey "+{INSERT}", "" .OnKey "+{DEL}", "" .CommandBars("Edit").FindControl(ID:).Enabled = False .CommandBars("Edit").FindControl(ID:8).Enabled = False .CommandBars("Cell").FindControl(ID:).Enabled = False .CommandBars("Column").FindControl(ID:).Enabled = False .CommandBars("Row").FindControl(ID:).Enabled = False .CommandBars("Button").FindControl(ID:).Enabled = False .CommandBars("Formula Bar").FindControl(ID:).Enabled = False .CommandBars("Worksheet Menu Bar").FindControl(ID:).Enabled = False .CommandBars("Standard").FindControl(ID:).Enabled = False .CommandBars("Button").FindControl(ID:8).Enabled = False .CommandBars("Formula Bar").FindControl(ID:8).Enabled = False .CommandBars("Worksheet Menu Bar").FindControl(ID:8).Enabled = False .CommandBars("Standard").FindControl(ID:8).Enabled = False .CommandBars("Ply").FindControl(ID:8).Enabled = False .CommandBars("Edit").FindControl(ID:!).Enabled = False .CommandBars("Cell").FindControl(ID:!).Enabled = False .CommandBars("Column").FindControl(ID:!).Enabled = False .CommandBars("Row").FindControl(ID:!).Enabled = False .CommandBars("Button").FindControl(ID:!).Enabled = False .CommandBars("Formula Bar").FindControl(ID:!).Enabled = False .CommandBars("Worksheet Menu Bar").FindControl(ID:!).Enabled = False .CommandBars("Standard").FindControl(ID:!).Enabled = False End With End Sub
Private Sub Workbook_Deactivate() On Error Resume Next With Application .OnKey "^c" .OnKey "^v" .OnKey "^x" .OnKey "^{INSERT}" .OnKey "+{INSERT}" .OnKey "+{DEL}" .CommandBars("Edit").FindControl(ID:).Enabled = True .CommandBars("Edit").FindControl(ID:8).Enabled = True .CommandBars("Cell").FindControl(ID:).Enabled = True .CommandBars("Column").FindControl(ID:).Enabled = True .CommandBars("Row").FindControl(ID:).Enabled = True .CommandBars("Button").FindControl(ID:).Enabled = True .CommandBars("Formula Bar").FindControl(ID:).Enabled = True .CommandBars("Worksheet Menu Bar").FindControl(ID:).Enabled = True .CommandBars("Standard").FindControl(ID:).Enabled = True .CommandBars("Button").FindControl(ID:8).Enabled = True .CommandBars("Formula Bar").FindControl(ID:8).Enabled = True .CommandBars("Worksheet Menu Bar").FindControl(ID:8).Enabled = True .CommandBars("Standard").FindControl(ID:8).Enabled = True .CommandBars("Ply").FindControl(ID:8).Enabled = True .CommandBars("Edit").FindControl(ID:!).Enabled = True .CommandBars("Cell").FindControl(ID:!).Enabled = True .CommandBars("Column").FindControl(ID:!).Enabled = True .CommandBars("Row").FindControl(ID:!).Enabled = True .CommandBars("Button").FindControl(ID:!).Enabled = True .CommandBars("Formula Bar").FindControl(ID:!).Enabled = True .CommandBars("Worksheet Menu Bar").FindControl(ID:!).Enabled = True .CommandBars("Standard").FindControl(ID:!).Enabled = True End With End Sub
ChrisV
"aurel" a écrit dans le message de news: be7f01c3ecc4$ecf96ba0$
Bonjour
je sais pas si c'est possible mais j'aimerai interdire de faire des copier coller (ou des couper coller) sur un de mes fichiers excel(et pas sur les autres). Si quelqu'un sait faire je lui serai reconnaissant.
Merci
Frédéric Sigonneau
Bonsoir,
Une approche possible :
- pour empêcher de copier(couper)/coller dans un classeur, dans une feuille de calcul ou entre feuilles de calcul (code à coller dans le module ThisWorkbook de ce classeur)
Private Sub Workbook_SheetSelectionChange _ (ByVal Sh As Object, ByVal Target As Range) Application.CutCopyMode = False End Sub
- pour empêcher de copier vers un autre classeur et/ou de coller dans un autre classeur (code toujours à coller dans le module ThisWorkbook du classeur à 'protéger')
Private Sub Workbook_WindowActivate(ByVal Wn As Window) Application.CutCopyMode = False End Sub
Private Sub Workbook_WindowDeactivate(ByVal Wn As Window) Application.CutCopyMode = False End Sub
Note : ça n'interdit pas de coller dans le classeur des données en provenance d'une source extérieure à Excel (Notepad ou Word, par exemple).
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
Bonjour
je sais pas si c'est possible mais j'aimerai interdire de faire des copier coller (ou des couper coller) sur un de mes fichiers excel(et pas sur les autres). Si quelqu'un sait faire je lui serai reconnaissant.
Merci
Bonsoir,
Une approche possible :
- pour empêcher de copier(couper)/coller dans un classeur, dans une feuille de
calcul ou entre feuilles de calcul (code à coller dans le module ThisWorkbook de
ce classeur)
Private Sub Workbook_SheetSelectionChange _
(ByVal Sh As Object, ByVal Target As Range)
Application.CutCopyMode = False
End Sub
- pour empêcher de copier vers un autre classeur et/ou de coller dans un autre
classeur (code toujours à coller dans le module ThisWorkbook du classeur à
'protéger')
Private Sub Workbook_WindowActivate(ByVal Wn As Window)
Application.CutCopyMode = False
End Sub
Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
Application.CutCopyMode = False
End Sub
Note : ça n'interdit pas de coller dans le classeur des données en provenance
d'une source extérieure à Excel (Notepad ou Word, par exemple).
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjour
je sais pas si c'est possible mais j'aimerai interdire de
faire des copier coller (ou des couper coller) sur un de
mes fichiers excel(et pas sur les autres). Si quelqu'un
sait faire je lui serai reconnaissant.
- pour empêcher de copier(couper)/coller dans un classeur, dans une feuille de calcul ou entre feuilles de calcul (code à coller dans le module ThisWorkbook de ce classeur)
Private Sub Workbook_SheetSelectionChange _ (ByVal Sh As Object, ByVal Target As Range) Application.CutCopyMode = False End Sub
- pour empêcher de copier vers un autre classeur et/ou de coller dans un autre classeur (code toujours à coller dans le module ThisWorkbook du classeur à 'protéger')
Private Sub Workbook_WindowActivate(ByVal Wn As Window) Application.CutCopyMode = False End Sub
Private Sub Workbook_WindowDeactivate(ByVal Wn As Window) Application.CutCopyMode = False End Sub
Note : ça n'interdit pas de coller dans le classeur des données en provenance d'une source extérieure à Excel (Notepad ou Word, par exemple).
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
Bonjour
je sais pas si c'est possible mais j'aimerai interdire de faire des copier coller (ou des couper coller) sur un de mes fichiers excel(et pas sur les autres). Si quelqu'un sait faire je lui serai reconnaissant.