OVH Cloud OVH Cloud

Effectuer un traitement si la valeur d'une cellule change

2 réponses
Avatar
Franck
Bonjour,

Dans un onglet, j'ai plein de chiffres de pr=E9visions. Je=20
voudrai qu'=E0 chaque fois que l'on change un de ces=20
chiffres, cela d=E9clenche une macro.
Je suis parti sur une macro du type worksheet_change mais=20
apr=E8s, mes tentatives se sont sold=E9es par un =E9chec.
La derni=E8re en date (voir code ci dessous), je suis parti=20
sur target.validate.modifiy mais cela concerne les listes=20
de validation, ce qui ne r=E9pond pas =E0 ma probl=E9matique.

Merci d'avance pour vos r=E9ponses,
Franck.


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.validate.Modify =3D True Then
Cells(1, 1) =3D "TOTO"
End If
End Sub

2 réponses

Avatar
LeSteph
Bonjour,
'Pour la même chose:
Private Sub Worksheet_Change(ByVal Target As Range)
Cells(1, 1) = "TOTO"
End sub

Pour cibler la cellule de modification ex:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$6" Then [c6] = "maj le " & _
Format(Now, "ddmmyy")

End Sub

Pour déterminer une zone à cibler va voir l'exemple de l'aide
sur
Intersect
utilise aussi
Target.offset(ligne,colonne) pour réagir sur une autre zone

lSteph



"Franck" a écrit dans le message de
news: 13bf01c4ac38$168f69a0$
Bonjour,

Dans un onglet, j'ai plein de chiffres de prévisions. Je
voudrai qu'à chaque fois que l'on change un de ces
chiffres, cela déclenche une macro.
Je suis parti sur une macro du type worksheet_change mais
après, mes tentatives se sont soldées par un échec.
La dernière en date (voir code ci dessous), je suis parti
sur target.validate.modifiy mais cela concerne les listes
de validation, ce qui ne répond pas à ma problématique.

Merci d'avance pour vos réponses,
Franck.


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.validate.Modify = True Then
Cells(1, 1) = "TOTO"
End If
End Sub
Avatar
Merci pour toutes ces réponses, je devrai trouver mon
bonheur

Franck.
-----Message d'origine-----
Bonjour,
'Pour la même chose:
Private Sub Worksheet_Change(ByVal Target As Range)
Cells(1, 1) = "TOTO"
End sub

Pour cibler la cellule de modification ex:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$6" Then [c6] = "maj le " & _
Format(Now, "ddmmyy")

End Sub

Pour déterminer une zone à cibler va voir l'exemple de
l'aide

sur
Intersect
utilise aussi
Target.offset(ligne,colonne) pour réagir sur une autre
zone


lSteph



"Franck" a écrit
dans le message de

news: 13bf01c4ac38$168f69a0$
Bonjour,

Dans un onglet, j'ai plein de chiffres de prévisions. Je
voudrai qu'à chaque fois que l'on change un de ces
chiffres, cela déclenche une macro.
Je suis parti sur une macro du type worksheet_change mais
après, mes tentatives se sont soldées par un échec.
La dernière en date (voir code ci dessous), je suis parti
sur target.validate.modifiy mais cela concerne les listes
de validation, ce qui ne répond pas à ma problématique.

Merci d'avance pour vos réponses,
Franck.


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.validate.Modify = True Then
Cells(1, 1) = "TOTO"
End If
End Sub


.