Message d'alerte suivant valeur

annov

XLDnaute Occasionnel
Bonsoir à tous

Une nouvelle fois je recherche l'aide du forum , j'ai un fichier ci-joint dans lequel
En B6:B26 la valeur saisie
En D6:D26 Ecart d'un jour à l'autre
En C28 la somme de D6:D26

Si possible je voudrais que lorsque l'on atteint 20 dans l'exemple 1 un message s'affiche (clignotant si possible) , jusqu'à l'acquittement du message attestant d'une réelle prise en compte.et que la cellule passe en fond rouge.

Dans l'exemple 2 même colonne j'ai continué à saisir à la suite des valeurs et je voudrais avoir la même fonction lorsque j'atteindrai 40 et ainsi de suite.
L'idéal serait que la valeur soit modifiable .

Pour les messages j'avais vu sur le fil des exemples de cellules ou de formes clignotantes proposés par MydearFriend qui étaient vraiment supers
mais je n'ai pas réussi à les adapter dans mon fichier (car mon niveau vb --)

Merci d'avance pour vos conseils précieux
 

Pièces jointes

  • alerte v.xlsx
    13.5 KB · Affichages: 143
  • alerte v.xlsx
    13.5 KB · Affichages: 152
  • alerte v.xlsx
    13.5 KB · Affichages: 152

mth

XLDnaute Barbatruc
Re : Message d'alerte suivant valeur

Bonsoir à tous :)

Les cellules clignotantes sont très bien pour une alerte ponctuelle, mais faire clignoter une alerte en permanence rend tout travail assez pénible (en plus de ralentir Excel), donc pas forcément adapté à ton cas, comme le dit Job (que je salue :) )

Dans le fichier joint, une piste en attendant d'autres propositions meilleures que ça, avec 1 msg box qui s'affiche si le seuil est atteind (pas aussi fort qu'un clignotement, mais agaçant quand même tu verras ...):

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, [C6:C26]) Is Nothing Then
        If [C28] >= [C1] Then
            MsgBox ("Prévoir enlèvement")
        End If
    End If
    If Not Intersect(Target, [E6:E26]) Is Nothing Then
        If [E28] >= [E1] Then
            MsgBox ("Prévoir enlèvement")
        End If
    End If
End Sub

et une simple mise en forme conditionnelle sur la dernière cellule remplie, si le seuil est atteint, avec cet exemple de formule:

Code:
=ET(C$27>=C$1;C$6<>"";LIGNE(C6)-5=NBVAL(C$6:C$26))

Vois si tu peux en tirer quelque chose ou pas.

Bonne soirée,

mth
 

Pièces jointes

  • alerte%20v(1).xlsm
    19.5 KB · Affichages: 146

zeltron24

XLDnaute Impliqué
Re : Message d'alerte suivant valeur

Bonsoir,

Si je peux me permettre ma modeste contribution à voir avec les autres tu pourrais peut etre arriver à ton souhait

Salutations
 

Pièces jointes

  • alerte v.xlsx
    15.1 KB · Affichages: 157
  • alerte v.xlsx
    15.1 KB · Affichages: 158
  • alerte v.xlsx
    15.1 KB · Affichages: 158

annov

XLDnaute Occasionnel
Re : Message d'alerte suivant valeur

Bonsoir,

Tu as peut être raison , question gadget .Mais bon il y a surement d'autres façons de faire comprendre à quelqu'un qu'il n'est pas sur le bon chemin ou qu'il n'est pas au même niveau que soi pour comprendre que xls n'est tout simplement par fait pour ce genre de choses. Néanmoins je tire toujours profit des remarques que l'on me fait , Surtout celles qui sont constructives et qui m'aident à avancer.

Bonne soirée
 

mth

XLDnaute Barbatruc
Re : Message d'alerte suivant valeur

Bonsoir à tous :)

annov, je te remercie pour ton MP, mais je le remets ici ainsi qu'une tentative de réponse; toujours plus intéressant d'échanger à plusieurs sur le forum qu'en tête à tête en MP, et tu auras ainsi certainement d'autres propositions que mon essai.

bonsoir, mth

Merci pour la solution effectivement le msgbox est plus adapté qu'une cellule clignotante.

Peut tu me donner quelques précisions sur les points ci dessous;

Le remplissage de la cellule se fait par MFC mais est il possible par ce biais de maintenir le remplissage lorsque je passe à la cellule suivante ?
Ou dois je passer obligatoirement par une macro .

J'ai regardé la macro mais je n'ai pas compris comment faire pour que le message disparaisse après acquittement j'usqu'au prochain seuil rencontré.

Merci

Tu trouveras en PJ une autre proposition en fait 2 façons de faire, une pour la colonne C:
Plus du tout de mise en forme conditionnelle, et ce code:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    [COLOR=darkgreen]'si la saisie n'est pas dans les cellules C6 à C26[/COLOR]
    If Not Intersect(Target, [C6:C26]) Is Nothing Then
        [COLOR=darkgreen]'si C27>C1[/COLOR]
        If [C27] >= [C1] Then
           [COLOR=darkgreen]'Affichage du message[/COLOR]
            MsgBox ("Prévoir enlèvement")
            [COLOR=darkgreen]'cellule passe en rouge[/COLOR]
            Target.Interior.Color = 255
        End If
    End If
End Sub

Ca fonctionne, mais je ne trouve pas ça très agréable finalement.

Autre idée appliquée à la colonne E:
Suppression des mise en forme conditionnelles, et ce code:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)  
    [COLOR=darkgreen]'Si la saisie n'est pas dans les cellules E6 à E26[/COLOR]
    If Not Intersect(Target, [E6:E26]) Is Nothing Then
        [COLOR=darkgreen]'Si E27>E1[/COLOR]
        If [E27] >= [E1] Then
           [COLOR=darkgreen]'Cellule passe en rouge[/COLOR]
            Target.Interior.Color = 255
            [COLOR=darkgreen]'Ajout d'un commentaire[/COLOR]
            Target.AddComment ("Prévoir enlèvement")
            [COLOR=darkgreen]'Ajustement de la taille du commentaire[/COLOR]
            Target.Comment.Shape.TextFrame.AutoSize = True
        End If
    End If
End Sub

J'ai ajouté une petite macro pour éliminer les couleurs et les commentaires en cas de besoin:
Code:
Sub RemiseABlanc()
With Sheets("Feuil1")
    On Error Resume Next
        .Range("E6:E26").ClearComments
        .Range("E6:E26").Interior.Color = xlNone
    On Error GoTo 0
End With
End Sub

Pour la partie commentaires, je me suis inspirée du site de JBoisgontier

Voilà, je te laisse regarder si cela peut t'aider.

Bonne soirée,

mth
 

Pièces jointes

  • alerte%2520v2.xls
    50.5 KB · Affichages: 150
Dernière édition:

annov

XLDnaute Occasionnel
Re : Message d'alerte suivant valeur

Bonsoir,mth
Un grand merci pour ton aide.Nettement mieux que mon idée initiale de cellule clignotante.
Merci pour les commentaires des codes , super utile pour un débutant comme moi.

Bonne soirée et bon W-E
 

Discussions similaires

Statistiques des forums

Discussions
312 241
Messages
2 086 523
Membres
103 242
dernier inscrit
Patoshick