l'=E9v=E8nement ne se produit pas quand on cole les valeurs=20
dans les cellules
quelqu'un connait il l'astuce ?
a mettre dans ThisWorkbook
Dim modif As Boolean
Private Sub Workbook_Open()
modif =3D False
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim msg As Label
On Error GoTo msg
If modif =3D True Then
Range("DateDerni=E8reModif").Value =3D "Derni=E8re modification=20
le " & Format(Date, _
"dd/mm/yyyy") & " " & Format(Time, "hh:mm") 'c'est l=E0=20
que la date de modif s'affiche
Range("UserDerni=E8reModif").Value =3D "Effectu=E9e Par : " &=20
UserName()
End If
Exit Sub
msg:
End Sub
Private Sub Workbook_SheetChange(ByVal Feuil As Object,=20
ByVal Target As Range)
modif =3D True
Dim msg As Label
On Error GoTo msg
If Target.Column =3D Range("Colonne_Valeur").Column=20
Then 'c'est bien la colonne Mois_valeur
Range("DateSaisie").Cells(Target.Row,=20
1).Font.ColorIndex =3D 5
Range("DateSaisie").Cells(Target.Row, 1).Value =3D Now
End If
Exit Sub
msg:
End Sub
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
Frédéric Sigonneau
Bonjour,
Tu peux essayer d'utiliser également l'événement SheetSelectionChange :
Private Sub Workbook_SheetSelectionChange( _ ByVal Sh As Object, ByVal Target As Range) If Application.CutCopyMode Then modif = True End Sub
Cependant, en cas d'un copier/collage spécial d'une cellule sur elle-même (pour fixer sa valeur en éliminant la formule qu'elle contient, par exemple) cet événement n'est pas déclenché non plus.
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 !
j'ai un petit souci sur le Prog ci-dessous
l'évènement ne se produit pas quand on cole les valeurs dans les cellules
quelqu'un connait il l'astuce ?
a mettre dans ThisWorkbook
Dim modif As Boolean Private Sub Workbook_Open() modif = False End Sub Private Sub Workbook_BeforeClose(Cancel As Boolean) Dim msg As Label On Error GoTo msg If modif = True Then Range("DateDernièreModif").Value = "Dernière modification le " & Format(Date, _ "dd/mm/yyyy") & " " & Format(Time, "hh:mm") 'c'est là que la date de modif s'affiche Range("UserDernièreModif").Value = "Effectuée Par : " & UserName() End If Exit Sub msg: End Sub Private Sub Workbook_SheetChange(ByVal Feuil As Object, ByVal Target As Range) modif = True
Dim msg As Label On Error GoTo msg If Target.Column = Range("Colonne_Valeur").Column Then 'c'est bien la colonne Mois_valeur Range("DateSaisie").Cells(Target.Row, 1).Font.ColorIndex = 5 Range("DateSaisie").Cells(Target.Row, 1).Value = Now End If Exit Sub msg: End Sub
Bonjour,
Tu peux essayer d'utiliser également l'événement SheetSelectionChange :
Private Sub Workbook_SheetSelectionChange( _
ByVal Sh As Object, ByVal Target As Range)
If Application.CutCopyMode Then modif = True
End Sub
Cependant, en cas d'un copier/collage spécial d'une cellule sur elle-même (pour
fixer sa valeur en éliminant la formule qu'elle contient, par exemple) cet
événement n'est pas déclenché non plus.
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 !
j'ai un petit souci sur le Prog ci-dessous
l'évènement ne se produit pas quand on cole les valeurs
dans les cellules
quelqu'un connait il l'astuce ?
a mettre dans ThisWorkbook
Dim modif As Boolean
Private Sub Workbook_Open()
modif = False
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim msg As Label
On Error GoTo msg
If modif = True Then
Range("DateDernièreModif").Value = "Dernière modification
le " & Format(Date, _
"dd/mm/yyyy") & " " & Format(Time, "hh:mm") 'c'est là
que la date de modif s'affiche
Range("UserDernièreModif").Value = "Effectuée Par : " &
UserName()
End If
Exit Sub
msg:
End Sub
Private Sub Workbook_SheetChange(ByVal Feuil As Object,
ByVal Target As Range)
modif = True
Dim msg As Label
On Error GoTo msg
If Target.Column = Range("Colonne_Valeur").Column
Then 'c'est bien la colonne Mois_valeur
Range("DateSaisie").Cells(Target.Row,
1).Font.ColorIndex = 5
Range("DateSaisie").Cells(Target.Row, 1).Value = Now
End If
Exit Sub
msg:
End Sub
Tu peux essayer d'utiliser également l'événement SheetSelectionChange :
Private Sub Workbook_SheetSelectionChange( _ ByVal Sh As Object, ByVal Target As Range) If Application.CutCopyMode Then modif = True End Sub
Cependant, en cas d'un copier/collage spécial d'une cellule sur elle-même (pour fixer sa valeur en éliminant la formule qu'elle contient, par exemple) cet événement n'est pas déclenché non plus.
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 !
j'ai un petit souci sur le Prog ci-dessous
l'évènement ne se produit pas quand on cole les valeurs dans les cellules
quelqu'un connait il l'astuce ?
a mettre dans ThisWorkbook
Dim modif As Boolean Private Sub Workbook_Open() modif = False End Sub Private Sub Workbook_BeforeClose(Cancel As Boolean) Dim msg As Label On Error GoTo msg If modif = True Then Range("DateDernièreModif").Value = "Dernière modification le " & Format(Date, _ "dd/mm/yyyy") & " " & Format(Time, "hh:mm") 'c'est là que la date de modif s'affiche Range("UserDernièreModif").Value = "Effectuée Par : " & UserName() End If Exit Sub msg: End Sub Private Sub Workbook_SheetChange(ByVal Feuil As Object, ByVal Target As Range) modif = True
Dim msg As Label On Error GoTo msg If Target.Column = Range("Colonne_Valeur").Column Then 'c'est bien la colonne Mois_valeur Range("DateSaisie").Cells(Target.Row, 1).Font.ColorIndex = 5 Range("DateSaisie").Cells(Target.Row, 1).Value = Now End If Exit Sub msg: End Sub