Macro si diminution valeur cellule dans une plage

Le
Domi
Bonjour,
Les cellules de "MaPlage" sont vides ou contiennent des valeurs numériques.

Je souhaite qu'a chaque changement de valeur dans une cellule de "MaPlage"
Si la cellule était vide et que j'ajoute une valeur : declenchement de
"mamacro"
Si je change une valeur pour une valeur supérieure : declenchement de
"mamacro"
Si je change une valeur pour une valeur inférieur : rien

Quelqu'un pourrait-il me donner un coup de main
Merci
Domi
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Xavier POWAGA
Le #4370571
en fait l'astuce consiste à mémoriser les anciennes valeurs
par ce code je les mémorise dans la feuille suivante

code de ta feuille:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target > Sheets(2).Cells(Target.Row, Target.Column) Then lancemacro
Sheets(2).Cells(Target.Row, Target.Column) = Target
End Sub

Sub lancemacro()
MsgBox "la macro est lancée"
End Sub



"Domi"
Bonjour,
Les cellules de "MaPlage" sont vides ou contiennent des valeurs
numériques.

Je souhaite qu'a chaque changement de valeur dans une cellule de "MaPlage"
Si la cellule était vide et que j'ajoute une valeur : declenchement de
"mamacro"
Si je change une valeur pour une valeur supérieure : declenchement de
"mamacro"
Si je change une valeur pour une valeur inférieur : rien...

Quelqu'un pourrait-il me donner un coup de main
Merci
Domi




JB
Le #4370541
Bonjour,

http://cjoint.com/?cruNRi6aL7

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect([maplage], Target) Is Nothing And Target.Count = 1
Then
If IsNumeric([mémo]) Then m = CDbl([mémo]) Else m = 0
If Target > m Then mamacro
End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect([maplage], Target) Is Nothing And Target.Count = 1
Then
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr( 34)
& Target.Value & Chr(34)
End If
End Sub

Sub mamacro()
MsgBox "coucou"
End Sub

JB

On 17 fév, 19:40, "Domi"
Bonjour,
Les cellules de "MaPlage" sont vides ou contiennent des valeurs numéri ques.

Je souhaite qu'a chaque changement de valeur dans une cellule de "MaPlage"
Si la cellule était vide et que j'ajoute une valeur : declenchement de
"mamacro"
Si je change une valeur pour une valeur supérieure : declenchement de
"mamacro"
Si je change une valeur pour une valeur inférieur : rien...

Quelqu'un pourrait-il me donner un coup de main
Merci
Domi


Domi
Le #4370471
Merci JB,
Jétais pas loin...j'avais bien essayé de triturer ta macro "Baisse"... en
vain.
En tout cas là ca marche impec. ;o)
Domi

"JB"
Bonjour,

http://cjoint.com/?cruNRi6aL7

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect([maplage], Target) Is Nothing And Target.Count = 1
Then
If IsNumeric([mémo]) Then m = CDbl([mémo]) Else m = 0
If Target > m Then mamacro
End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect([maplage], Target) Is Nothing And Target.Count = 1
Then
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34)
& Target.Value & Chr(34)
End If
End Sub

Sub mamacro()
MsgBox "coucou"
End Sub

JB

On 17 fév, 19:40, "Domi"
Bonjour,
Les cellules de "MaPlage" sont vides ou contiennent des valeurs
numériques.

Je souhaite qu'a chaque changement de valeur dans une cellule de "MaPlage"
Si la cellule était vide et que j'ajoute une valeur : declenchement de
"mamacro"
Si je change une valeur pour une valeur supérieure : declenchement de
"mamacro"
Si je change une valeur pour une valeur inférieur : rien...

Quelqu'un pourrait-il me donner un coup de main
Merci
Domi


Publicité
Poster une réponse
Anonyme