OVH Cloud OVH Cloud

Rendre une valeur négative

2 réponses
Avatar
Pol
Bonsoir à tous,

Sur une feuille qui me sert d'échéancier, j'ai une colonne qui comporte le
numéro des jours pour les échéances ( ex. 11 pour 11/02/07 ), sur une autre
colonne les reglements correspondants.
J'ai une petite macro qui me permet de rendre négative la valeur du
reglement lorsque l'échéance de ce dernier arrive à son terme.
Par exemple:
en A1 j'ai la fonction =Maintenant()
en A2 , 11 le jour d'échéance
en C2, 500 le réglement

la macro:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
x = ActiveCell.Offset(0, 2).Value
If ActiveCell.Value = Day(Now) Then
ActiveCell.Offset(0, 2).Value = -x
End If
End Sub

lorsque A2 est active, C2 devient -500, pas de problême, mais si reviens
activer A2 une seconde fois, C2 repasse positif ..et c'est normal..ainsi de
suite.
Je cherche une astuce mais je ne trouve pas......à l'aide.

Merci
Pol

2 réponses

Avatar
cousinhub
Bonsoir, en faisant par exemple :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
x = ActiveCell.Offset(0, 2).Value
If x < 0 Then Exit Sub
If ActiveCell.Value = Day(Now) Then ActiveCell.Offset(0, 2).Value = -x
End Sub
Bon courage

Bonsoir à tous,

Sur une feuille qui me sert d'échéancier, j'ai une colonne qui comporte
le numéro des jours pour les échéances ( ex. 11 pour 11/02/07 ), sur une
autre colonne les reglements correspondants.
J'ai une petite macro qui me permet de rendre négative la valeur du
reglement lorsque l'échéance de ce dernier arrive à son terme.
Par exemple:
en A1 j'ai la fonction =Maintenant()
en A2 , 11 le jour d'échéance
en C2, 500 le réglement

la macro:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
x = ActiveCell.Offset(0, 2).Value
If ActiveCell.Value = Day(Now) Then
ActiveCell.Offset(0, 2).Value = -x
End If
End Sub

lorsque A2 est active, C2 devient -500, pas de problême, mais si reviens
activer A2 une seconde fois, C2 repasse positif ..et c'est normal..ainsi
de suite.
Je cherche une astuce mais je ne trouve pas......à l'aide.

Merci
Pol




Avatar
Pol
Bonsoir,

Merci , c'était si simple !!!

Bonne nuit
Pol
"cousinhub" a écrit dans le message de news:
u9M$m%
Bonsoir, en faisant par exemple :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
x = ActiveCell.Offset(0, 2).Value
If x < 0 Then Exit Sub
If ActiveCell.Value = Day(Now) Then ActiveCell.Offset(0, 2).Value = -x
End Sub
Bon courage

Bonsoir à tous,

Sur une feuille qui me sert d'échéancier, j'ai une colonne qui comporte
le numéro des jours pour les échéances ( ex. 11 pour 11/02/07 ), sur une
autre colonne les reglements correspondants.
J'ai une petite macro qui me permet de rendre négative la valeur du
reglement lorsque l'échéance de ce dernier arrive à son terme.
Par exemple:
en A1 j'ai la fonction =Maintenant()
en A2 , 11 le jour d'échéance
en C2, 500 le réglement

la macro:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
x = ActiveCell.Offset(0, 2).Value
If ActiveCell.Value = Day(Now) Then
ActiveCell.Offset(0, 2).Value = -x
End If
End Sub

lorsque A2 est active, C2 devient -500, pas de problême, mais si reviens
activer A2 une seconde fois, C2 repasse positif ..et c'est normal..ainsi
de suite.
Je cherche une astuce mais je ne trouve pas......à l'aide.

Merci
Pol