Définir une plage de cellule comme valeur négative
iskmali
Messages postés
108
Statut
Membre
-
Patrice33740 Messages postés 8930 Statut Membre -
Patrice33740 Messages postés 8930 Statut Membre -
Comme on peut définir dans Excel 2007 une plage de cellules comme valeur négative. C'est-à-dire même si on met une valeur positive celle-ci devient négative.
A voir également:
- Définir une plage de cellule comme valeur négative
- Définir google comme page d'accueil - Guide
- Faites afficher avec un fond coloré les cellules qui contiennent une valeur comprise entre 250 et 350. quel nombre est dessiné en surbrillance ? ✓ - Forum Excel
- Cette valeur ne correspond pas aux restrictions de validation des données pour cette cellule ✓ - Forum Excel
- Colorer une cellule excel selon de sa valeur - Guide
- Bloquer une cellule excel - Guide
2 réponses
Bonjour,
C'est-à-dire même si on met une valeur positive celle-ci devient négative.
@Frenchie83 : Ce n'est pas parce que l'affichage, par le truchement d'un format spécifique, montre une valeur négative que la cellule contient une valeur négative (il suffit d'employer cette valeur dans une formule pour le constater).
Transformer une ou plusieurs valeurs positives saisies, en valeurs négatives ne peut être fait que par macro !
Par exemple (à adapter) :
Cette macro s'applique aussi bien à une saisie de valeur unique qu'à une saisie matricielle de valeurs (avec Maj+Ctrl+Entrée), mais pas à la saisie de formule matricielle.
C'est-à-dire même si on met une valeur positive celle-ci devient négative.
@Frenchie83 : Ce n'est pas parce que l'affichage, par le truchement d'un format spécifique, montre une valeur négative que la cellule contient une valeur négative (il suffit d'employer cette valeur dans une formule pour le constater).
Transformer une ou plusieurs valeurs positives saisies, en valeurs négatives ne peut être fait que par macro !
Par exemple (à adapter) :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
Dim cel As Range
'Plage concernée
Set rng = Range("B12:E20")
'Plage à modifier
Set rng = Intersect(rng, Target)
If rng Is Nothing Then Exit Sub
For Each cel In rng.Cells
If IsNumeric(cel.Value) Then
If cel.Value > 0 Then cel.Value = -cel.Value
End If
Next cel
End Sub
Cette macro s'applique aussi bien à une saisie de valeur unique qu'à une saisie matricielle de valeurs (avec Maj+Ctrl+Entrée), mais pas à la saisie de formule matricielle.