Bonjour au forum,
J'ai besoin de n'autoriser que le copier/coller de valeur dans un classeur Excel, quelque soit la méthode utilisée (clique droit, ctrl+c, glisser/déposer...).
J'ai donc écris ce code :
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Source As Range)
On Error Resume Next
With Application
If .CutCopyMode Then
.EnableEvents = False
.Undo
Selection.PasteSpecial xlPasteValues
.OnUndo "", ""
.OnRepeat "", ""
.EnableEvents = True
End If
End With
End Sub
qui fonctionne mise à part pour le glisser/déposer qui lui me recopie la mise en forme
J'ai testé ce code :
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Source As Range)
On Error Resume Next 'sécurité
With Application
If .CutCopyMode Then
.EnableEvents = False
.Undo
Selection.PasteSpecial xlPasteValues
.OnUndo "", ""
.OnRepeat "", ""
.EnableEvents = True
If .CellDragAndDrop Then
.EnableEvents = False
.Undo
Selection.PasteSpecial xlPasteValues
.OnUndo "", ""
.OnRepeat "", ""
.EnableEvents = True
End If
End if
End With
End Sub
mais cela ne fonctionne pas.
Auriez-vous une idée ?
Un tout grand merci d'avance
Nico.