Note: The other languages of the website are Google-translated. Back to English

Comment désactiver les fonctions couper, copier et coller dans Excel?

Supposons que vous ayez un classeur contenant des données importantes que vous devez protéger contre le coupage, la copie et le collage. Comment y parvenir? Cet article fournit une méthode VBA pour vous permettre de désactiver les fonctions couper, copier et coller en même temps dans un classeur Excel.

Désactivez les fonctions couper, copier et coller avec le code VBA


Désactivez les fonctions couper, copier et coller avec le code VBA

Veuillez procéder comme suit pour désactiver les fonctions couper, copier et coller dans un classeur Excel.

1. Dans le classeur, vous devez désactiver les fonctions couper, copier et coller, appuyez sur le bouton autre + F11 touches simultanément pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. dans le Microsoft Visual Basic pour applications fenêtre, veuillez double-cliquer Ce classeur à gauche Le projet NetPoulSafe volet, puis copiez et collez le code VBA ci-dessous dans le Ce classeur (code) la fenêtre. Voir la capture d'écran:

Code VBA: désactivez les fonctions couper, copier et coller en même temps dans Excel

Private Sub Workbook_Activate()
Application.CutCopyMode = False
Application.OnKey "^c", ""
Application.CellDragAndDrop = False
End Sub

Private Sub Workbook_Deactivate()
Application.CellDragAndDrop = True
Application.OnKey "^c"
Application.CutCopyMode = False
End Sub

Private Sub Workbook_WindowActivate(ByVal Wn As Window)
Application.CutCopyMode = False
Application.OnKey "^c", ""
Application.CellDragAndDrop = False
End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
Application.CellDragAndDrop = True
Application.OnKey "^c"
Application.CutCopyMode = False
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Application.CutCopyMode = False
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Application.OnKey "^c", ""
Application.CellDragAndDrop = False
Application.CutCopyMode = False
End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
Application.CutCopyMode = False
End Sub

3. Ensuite, appuyez sur le autre + Q touches pour quitter Microsoft Visual Basic pour applications fenêtre.

Désormais, vous ne pouvez pas couper ou copier les données de ce classeur, en attendant, les données que vous avez copiées à partir d'autres feuilles ou classeurs ne peuvent pas être collées dans ce classeur.

Notez les: La fonction glisser-déposer est également désactivée après l'exécution du code VBA ci-dessus.


Articles connexes:


Les meilleurs outils de productivité de bureau

Kutools for Excel Résout la plupart de vos problèmes et augmente votre productivité de 80 %

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtréeplus
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammesplus
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellulesplus
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDFplus
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2021 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Fonctionnalités complètes Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
bas de cabine
Commentaires (50)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
je fais comme ci-dessus mais la fonction de copier et coller est désactivée dans n'importe quel fichier excel que j'ouvre .pourquoi?
Ce commentaire a été minimisé par le modérateur sur le site
Salut, j'ai utilisé ceci pour cacher "Cut" aux utilisateurs et cela fonctionne très bien sauf si vous avez un tableau, le "Cut" réapparaît miraculeusement lorsque vous sélectionnez une cellule dans le tableau, exactement ce que j'essaie d'éviter. des idées? Merci!
Ce commentaire a été minimisé par le modérateur sur le site
Merci Monsieur son travail. Mais dans le classeur entier. Si j'ai besoin de ce code uniquement sur une feuille particulière, est-ce possible ??
Ce commentaire a été minimisé par le modérateur sur le site
avez-vous trouvé une réponse?
Ce commentaire a été minimisé par le modérateur sur le site
Merci beaucoup. Il fonctionne dans tout le classeur. Pouvons-nous faire le codage uniquement pour 1 feuille. Aidez-moi s'il vous plaît.
Ce commentaire a été minimisé par le modérateur sur le site
Comment réactiver la fonction couper, copier et coller ? S'il vous plaît des conseils!
Ce commentaire a été minimisé par le modérateur sur le site
Cher ciel
Veuillez exécuter le VBA1 ci-dessous (placez le code dans le module ThisWorkbook) pour désactiver la fonction couper, copier et coller dans votre classeur.

VBA1 :
Sous SupprCopie()
Avec application
.OnKey "^x", ""
.OnKey "^c", ""
.CommandBars("Cellule").Controls(1).Enabled = False
.CommandBars("Cellule").Controls(2).Enabled = False
Terminer par
End Sub

Et exécutez le VBA2 pour activer toutes ces fonctions dans votre classeur.

VBA2 :
Sous RecoverCopy()
Avec application
.OnKey "^x"
.OnKey "^c"
.CommandBars("Cell").Controls(1).Enabled = True
.CommandBars("Cell").Controls(2).Enabled = True
Terminer par
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Cela ne semble pas avoir fonctionné pour moi - dois-je supprimer le code VBA d'origine, puis coller ce qui précède pour activer à nouveau la fonction Couper, copier et coller?
Ce commentaire a été minimisé par le modérateur sur le site
Good Day,
Le commentaire ci-dessus VBA1in est le remplacement du code d'origine.
Ce commentaire a été minimisé par le modérateur sur le site
Cher,

je veux désactiver couper, copier, coller dans la feuille excel 2007
pouvez-vous partager le code pour cela
Ce commentaire a été minimisé par le modérateur sur le site
Good Day,
Merci pour votre commentaire. J'essaie de trouver la solution pour Excel 2007. Veuillez patienter.
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour,
Est-il possible de désactiver uniquement "CUT" ? mais je pourrais toujours utiliser le Copier et Coller ?
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour Carmelo,
Veuillez copier et coller le code ci-dessous dans la fenêtre de code du classeur de votre classeur, puis enregistrez-le en tant que classeur Excel compatible avec les macros. Ensuite, la fonction "Couper" sera désactivée.

Option explicite
Privé WithEvents Cmbrs As CommandBars

Sous-carnet de travail privé_Open ()
Définir Cmbrs = Application.CommandBars
End Sub

Sous-carnet de travail privé_Activate ()
Si Application.CutCopyMode = 2 Alors
Application.CutCopyMode = 0
Si fin
End Sub

Privé Sub Cmbrs_OnUpdate()
Si moi est un classeur actif, alors
Si Application.CutCopyMode = 2 Alors
Application.CutCopyMode = 0
MsgBox "Opérations de coupe désactivées"
Si fin
Si fin
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
J'ai essayé comme vous l'avez dit mais rien ne se passe. Un veux exactement le même, Seul le
Fonction "Couper" désactivée. Je dois désactiver l'option "couper" de l'option du bouton clic droit et de la barre d'outils.
C'est du cristal possible ??
Ce commentaire a été minimisé par le modérateur sur le site
Bonne journée,
Le code fonctionne bien dans mon cas. Puis-je connaître votre version d'Office ?
Ce commentaire a été minimisé par le modérateur sur le site
Hi

Je suis un débutant des codes VBA et ce code a résolu 99% de mes problèmes.

Est-il possible de verrouiller la feuille de trou (comme ce code dose) mais d'avoir encore une cellule déverrouillée ?
(Clarifier, je voudrais autoriser le copier-coller dans les informations dans une seule cellule de la feuille de trous).

Meilleures salutations
L
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour Linda,
Vous pouvez résoudre le problème sans utiliser le code VBA.
Cliquez avec le bouton droit sur la cellule et sélectionnez Formater les cellules dans le menu contextuel, décochez la case Verrouillé sous l'onglet Protection de la boîte de dialogue. Et puis protégez la feuille de calcul avec un mot de passe.
Ce commentaire a été minimisé par le modérateur sur le site
J'étais super content de trouver ce message, mais j'ai besoin d'un peu d'aide pour limiter cela à une seule feuille de calcul dans un classeur à plusieurs feuilles de calcul. Et besoin de savoir comment l'exécuter sans intervention de l'utilisateur... nous avons besoin de cela dès que possible sur un classeur pour éviter les erreurs.
Ce commentaire a été minimisé par le modérateur sur le site
Bonne journée,
Le code VBA suivant peut vous aider à résoudre le problème. Et n'oubliez pas de remplacer "Sheet2" dans le code par le nom de votre feuille.

mJWSName public en tant que chaîne

Sous-carnet de travail privé_Open ()
mJWSName = "Feuille2"
End Sub

Sous-carnet de travail privé_Activate ()
Si ActiveSheet.Name = mJWSName Alors
Application.CutCopyMode = Faux
Application.OnKey "^c", ""
Application.CellDragAndDrop = False
Si fin
End Sub

Sous-classeur privé_Deactivate ()
Application.OnKey "^c", ""
Application.CellDragAndDrop = True
Application.CutCopyMode = Faux
End Sub


Private Sub Workbook_WindowActivate(ByVal Wn As Window)
Si ActiveSheet.Name = mJWSName Alors
Application.CutCopyMode = Faux
Application.OnKey "^c", ""
Application.CellDragAndDrop = False
Si fin
End Sub

Private Sub Workbook_WindowDeactivate (ByVal Wn As Window)
Application.OnKey "^c"
Application.CellDragAndDrop = True
Application.CutCopyMode = Faux
End Sub

Private Sub Workbook_SheetSelectionChange (ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
Si Sh.Name = mJWSName Alors
Application.CutCopyMode = Faux
Si fin
End Sub

Private Sub Workbook_SheetActivate (ByVal Sh As Object)
On Error Resume Next
Si Sh.Name = mJWSName Alors
Application.OnKey "^c", ""
Application.CellDragAndDrop = False
Application.CutCopyMode = Faux
Si fin
End Sub

Private Sub Workbook_SheetDeactivate (ByVal Sh As Object)
Application.OnKey "^c"
Application.CellDragAndDrop = True
Application.CutCopyMode = Faux
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Une dernière question - Où va ce code et comment est-il exécuté ? Le projet avec lequel cela doit fonctionner attache un fichier XLA à la feuille Excel qui contient une grande partie du code. Je ne savais pas si cela devait aller dans un module ou dans le code derrière cette feuille. Merci...
Ce commentaire a été minimisé par le modérateur sur le site
Merci pour votre direction.J'essaie au bureau 2013, mais rien n'a changé.
Ce commentaire a été minimisé par le modérateur sur le site
Salut, le code fonctionne bien merci.
Cependant, l'option de lecture seule était activée. (si vous ne voulez pas modifier). Si je mets ..Fichier, enregistrer sous, outils, options générales, lecture seule recommandée.. alors le code ne fonctionne pas.

Merci d'avance.
Ce commentaire a été minimisé par le modérateur sur le site
Ça marche vraiment bien, merci beaucoup.
Ce commentaire a été minimisé par le modérateur sur le site
Merci, cela fonctionne parfaitement ... peut-il être appliqué sur une gamme uniquement d'une manière ou d'une autre?
Ce commentaire a été minimisé par le modérateur sur le site
Bonne journée,
Désolé, je ne peux pas vous aider. Bienvenue à poster toute question dans notre forum: https://www.extendoffice.com/forum.html. Merci pour votre commentaire.
Ce commentaire a été minimisé par le modérateur sur le site
MERCI MONSIEUR
Ce commentaire a été minimisé par le modérateur sur le site
Merci, très utile.
Ce commentaire a été minimisé par le modérateur sur le site
couper copier coller applicable Tout le classeur. Si j'ai besoin de ce code uniquement sur une feuille particulière, est-ce possible ??
s'il vous plaît aider. nous n'avons besoin que d'une seule feuille pour désactiver les fonctions. une autre feuille nous travaillons toutes les fonctions...
Ce commentaire a été minimisé par le modérateur sur le site
Ce code ne fonctionne pas dans mon Excel 2016 pour une seule feuille au lieu de l'ensemble du classeur
Ce commentaire a été minimisé par le modérateur sur le site
Cela permet toujours de coller depuis le Bloc-notes ou Microsoft Edge. Veuillez voir s'il existe un moyen d'empêcher le collage à partir de n'importe quelle source.
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour,
Si vous empêchez le collage à partir de n'importe quelle source, nous devons empêcher la fonction Bloc-notes, ce qui peut entraîner des inconvénients. Nous ne le recommandons pas. Désolé de ne pas pouvoir t'aider pour ça.
Ce commentaire a été minimisé par le modérateur sur le site
J'ai utilisé ce code et je veux le réactiver ? comment le réactiver ?
Ce commentaire a été minimisé par le modérateur sur le site
utilisez ce code pour désactiver le copier-coller



Sous-carnet de travail privé_Activate ()

Application.CutCopyMode = Faux

Application.OnKey "^c", ""

Application.CellDragAndDrop = False

End Sub



Sous-classeur privé_Deactivate ()

Application.CellDragAndDrop = True

Application.OnKey "^c"

Application.CutCopyMode = Faux

End Sub



Private Sub Workbook_WindowActivate(ByVal Wn As Window)

Application.CutCopyMode = Faux

Application.OnKey "^c", ""

Application.CellDragAndDrop = False

End Sub



Private Sub Workbook_WindowDeactivate (ByVal Wn As Window)

Application.CellDragAndDrop = True

Application.OnKey "^c"

Application.CutCopyMode = Faux

End Sub



Private Sub Workbook_SheetSelectionChange (ByVal Sh As Object, ByVal Target As Range)

Application.CutCopyMode = Faux

End Sub



Private Sub Workbook_SheetActivate (ByVal Sh As Object)

Application.OnKey "^c", ""

Application.CellDragAndDrop = False

Application.CutCopyMode = Faux

End Sub



Private Sub Workbook_SheetDeactivate (ByVal Sh As Object)

Application.CutCopyMode = Faux

End Sub





et que vous souhaitez réactiver ces fonctions
Ce commentaire a été minimisé par le modérateur sur le site
Cela fonctionne très bien, comment modifier cela pour autoriser le copier/coller dans des colonnes spécifiques qui ont des menus déroulants liés à des plages nommées d'entrée acceptable et uniquement à l'entrée acceptable. Par exemple, un nom qui est Jetson, George, 25, autoriserait un copier/coller de Jetson, George, 25 mais n'autoriserait pas Jeston, George, 26. Ou un glisser-remplir qui donnerait Jetson, George, 25 puis 26 , puis 27, etc.
Dans ma feuille de calcul, je souhaite désactiver complètement le couper/copier/coller dans certaines colonnes, puis autoriser uniquement le copier-coller des données acceptables à partir des listes déroulantes.
Thank you.
Il n'y a pas encore de commentaires postés ici
Télécharger d'autres activités

Nous suivre

Copyright © 2009 - www.extendoffice.com. | Tous les droits sont réservés. Alimenté par ExtendOffice. | | Plan du site
Microsoft et le logo Office sont des marques commerciales ou des marques déposées de Microsoft Corporation aux États-Unis et / ou dans d'autres pays.
Protégé par Sectigo SSL