Bonjour,
je viens d'utilisé le code ci-après pour voir les changements effectuer sur une feuille excel.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name <> "Espion" Then
Application.EnableEvents = False
ValSaisie = Target
Application.Undo
temp = Application.CountA(Sheets("espion").Range("a:a")) + 1
Sheets("espion").Cells(temp, 1) = Sh.Name
Sheets("espion").Cells(temp, 2) = Target.Address
Sheets("espion").Cells(temp, 3) = Now
Sheets("espion").Cells(temp, 4) = Target
Sheets("espion").Cells(temp, 5) = ValSaisie
Sheets("espion").Cells(temp, 6) = Environ("username")
Application.EnableEvents = True
End If
End Sub
Ce code fonctionne bien mais je ne peut pas changer les valeurs. Quand j'enlève application.undo, cela marche bien mais il me marque la valeur rentrée deux fois au lieu de me rentré l'ancienne et la nouvelle. Comment remedier au problème?
je viens d'utilisé le code ci-après pour voir les changements effectuer sur une feuille excel.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name <> "Espion" Then
Application.EnableEvents = False
ValSaisie = Target
Application.Undo
temp = Application.CountA(Sheets("espion").Range("a:a")) + 1
Sheets("espion").Cells(temp, 1) = Sh.Name
Sheets("espion").Cells(temp, 2) = Target.Address
Sheets("espion").Cells(temp, 3) = Now
Sheets("espion").Cells(temp, 4) = Target
Sheets("espion").Cells(temp, 5) = ValSaisie
Sheets("espion").Cells(temp, 6) = Environ("username")
Application.EnableEvents = True
End If
End Sub
Ce code fonctionne bien mais je ne peut pas changer les valeurs. Quand j'enlève application.undo, cela marche bien mais il me marque la valeur rentrée deux fois au lieu de me rentré l'ancienne et la nouvelle. Comment remedier au problème?