Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

message d alerte si valeur d'une cellule devient négative

  • Initiateur de la discussion Initiateur de la discussion laura38
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

laura38

XLDnaute Nouveau
Bonjour,

Je souhaite obtenir sur une feuille excel un message d'alerte lorsqu les cellules d'une colonne passent en négatif.
Je ne veux pas utiliser de mise en forme conditionnel car trop risqué, la colonne en question est trop éloignée de la vue et donc je préfère un message d'alerte.

J'ai farfouillé un peu et j'ai trouvé ce code :

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect([Q1:Q10], Target) Is Nothing Then
If Target < 1 Then
MsgBox "Attention : Valeur négative"

End If
End If
End Sub


le problème c'est que celui-ci ne fonctionne pas. J'imagine qu'il ne fonctionne pas car les valeurs négatives ne proviennent pas d'une saisie en direct, mais d'une rechercheV qui provient elle meme d'une somme.SI.

Est il possible de me fournir un code qui détecterait la valeur négative importée par ma formule?

MErci pour votre aide!
 
Re : message d alerte si valeur d'une cellule devient négative

Bonjour,

essaye peut être ceci, dans le module de la feuille concernée :
Code:
Option Explicit
Private Sub Worksheet_Calculate()
Dim c As Range
For Each c In Range("Q1:Q10")
    If c < 0 Then MsgBox "Attention : Valeur négative en :" & vbCrLf & c.Address
Next c
End Sub

bon après midi
@+
 
Re : message d alerte si valeur d'une cellule devient négative

Bonjour laura38, Pierrot93


Sans support, c'est toujours un peu casse-gueule, mais essayez cela :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim s$, oPlg As Range, oCel As Range
    On Error GoTo E
    Set oPlg = Intersect([Q1:Q10], Target.Dependents)
    On Error GoTo 0
    If Not oPlg Is Nothing Then
        For Each oCel In oPlg.Cells
            If oCel.Value <= 0 Then s = s & vbLf & oCel.Address(0, 0)
        Next
    If s <> "" Then MsgBox "Attention : Valeur négative en " & s
    End If
C:
    'Suite de la procédure Worksheet_Change si besoin est...
Exit Sub
E:
    On Error GoTo 0
    Resume C
End Sub


ROGER2327
#5404


Vendredi 27 Décervelage 139 (Saints Chemins de fer, assassins - fête Suprême Quarte)
4 Pluviôse An CCXX, 6,4867h - perce-neige
2012-W04-2T15:34:05Z
 
Dernière édition:
Re : message d alerte si valeur d'une cellule devient négative

RE bonjour, et tout d'abord merci pour vos réponse si rapides!

pierrot93, ton code a l'air d'être tout à fait ce que je recherche. Il marche presque mais il y a un bog.
Lorsque le message s'affiche avec la valeur négative, ensuite une fenetre s ouvre :
Erreur d'éxecution 13
incompatibilté de type

quand je clique sur débogage :
Option Explicit
Private Sub Worksheet_Calculate()
Dim c As Range
For Each c In Range("Q2:Q30")
If c < 0 Then MsgBox "Attention : Valeur négative en :" & vbCrLf & c.Address
Next c
End Sub

et aussi lorsque je saisie une valeur dans d autres cellules ce bug se produit.

Peux-tu me dire si il y a qqch qui cloche?

Roger 2327 ton code n'a rien donné.

J'attache en pièce jointe un résumé très très bref de mon fichier pour illustrer mon pb.
J'y ai mis le code de Pierrot; et la il marche très bien comme vous pouvez le voir...

Qqun voit d'où cela peut venir?

Merci encore pour votre aide!
 

Pièces jointes

Re : message d alerte si valeur d'une cellule devient négative

(...)
Roger 2327 ton code n'a rien donné.
(...)



Normal ! Je suis le dernier des cons...​




ROGER2327
#5405


Vendredi 27 Décervelage 139 (Saints Chemins de fer, assassins - fête Suprême Quarte)
4 Pluviôse An CCXX, 7,6169h - perce-neige
2012-W04-2T18:16:50Z
 

Pièces jointes

Dernière édition:

Pièces jointes

Dernière édition:
Re : message d alerte si valeur d'une cellule devient négative

Bonsoir à tous.

Roger 2327 ton code n'a rien donné.
Lire : Roger, je n'ai pas été capable d'utiliser le code que vous m'avez fourni bénévolement, et ce malgré l'absence de fichier en exemple, mais je vous remercie cependant du temps que vous avez bien voulu consacrer à mon problème, alors que nous ne connaissons même pas.

L'éducation se perd, mon bon monsieur ! Les coups de pied au c.. aussi , celà expliquant peut-être ceci !
 
Re : message d alerte si valeur d'une cellule devient négative

Bonjour,

Je tenais simplement à vous informer que j'ai réussi à faire fonctionner le code fournit par pierrot.
Je suis désolée si j'ai vexé certaines personnes ici, ce n'était pas du tout mon but, et je vous remercie encore une fois pour toute l'aide que vous m'avez apportée!

Bonne journée à tous.
Laura
 
Re : message d alerte si valeur d'une cellule devient négative

Bonjour à tous

Sinon, une autre solution pour le fun 🙂.

Code:
'Option Explicit
Private Sub Worksheet_Calculate()
Set myRange = Worksheets(ActiveSheet.Name).Range("H2:H30")
answer = Application.WorksheetFunction.Min(myRange)
If answer < 0 Then MsgBox "Attention valeur négative!"
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
14
Affichages
514
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…