Bonjour,
je met en place de nombreux formulaire avec des mises en forme, des validations de données, etc, et Excel permet de plutôt bien protéger tout ça contre les modifications des utilisateurs en utilisant la protection de feuille.
Cependant, malgré la protection d'une feuille en décochant "Format de cellule", l'utilisateur peut quand même modifier les formats de cellule s'il effectue des Copier-Coller, ou Couper-Coller.
Je souhaiterai donc protéger une feuille contre toute modification de format.
Dans cette recherche, je me suis orienté vers la solution qui serait d'intercepter les commandes de collage, pour les forcer en "coller les valeurs".
Ceci fonctionne bien pour les "Copier-Coller" avec le code suivant :
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Application.CutCopyMode = xlCopy Then
Application.EnableEvents = False
Application.Undo
Target.PasteSpecial Paste:=xlPasteValues
Application.EnableEvents = True
End If
End Sub
Mais je n'arrive pas à le faire fonctionner pour les Couper-Coller.
Je pensais qu'en changeant la 1ère ligne de code ainsi, cela allait fonctionner, mais non :
If Application.CutCopyMode = xlCopy Or Application.CutCopyMode = xlCut Then
L'état du mode Couper n'est pas capturé...
Pourtant l'aide de Microsoft dit que c'est censé le faire :
https://docs.microsoft.com/fr-fr/office/vba/api/excel.application.cutcopymode
Sauriez-vous m'aider dans ma démarche ?