IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

créer une alerte lorsqu'un certain nombre de cellule dépassent une valeur précise [XL-2003]


Sujet :

Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 12
    Points : 10
    Points
    10
    Par défaut créer une alerte lorsqu'un certain nombre de cellule dépassent une valeur précise
    bonjour et désolé si le sujet à déjà été abordé, du pc de mon entreprise, je n'ai pas accès à la fonction recherche, je ne sais pas pourquoi.

    voilà ce que je cherche à faire n'est pas très compliqué :

    j'ai faias un tableau qui calcule l'effectif retenu. pour chaque ligne correspond un mois et chaque mois l'effectif retenu est calculé dans la colonne O du tableau. j'ai déjà créé une mise en forme conditionelle pour afficher en rouge l'effectif retenu d'un mios lorsqu'il dépasse 50.

    ce que je voudrais faire maintenant c'est qu'une cellule contenant un message particulier, ou une textbox, apparaisse avec un message d'alerte (contenant un texte que je taperai) lorsqu'au moins 10 lignes de la colonne sont supérieurs ou égales à 50 (qu'on a donc 10 résultats qui s'affichent en rouge).

    si quelqu'un a une idée de formule ou de macro, je suis preneur ...

    merci d'avance et bonne journée à tous

  2. #2
    Membre émérite Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Points : 2 662
    Points
    2 662
    Par défaut
    Salut,
    A partir du moment ou tu veux une message box tu devras passer par Macro, mais pour faciliter la macro tu peux placer la formule ci-dessous dans ta feuille.
    Cette formule compte, via un Somme Si matriciel, le nombre de données supérieures ou égales à 50.

    Exemple pour une plage de o2 à o100, placé en P1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {=SUM(IF(O2:O100>=50;1;0))}
    Pour le code macro, j'aurais tendance à partir sur un évenement Change de la feuille en question, ce qui donne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    If Target.Column <> 15 Then Exit Sub 'Sort si le changement n'a pas lieu dans la colonne O
     
    If Sheets("Tafeuille").Range("P1") >= 10 Then 'Si le compte obtenu dans la cellule P1 >= à 10 alors
        MsgBox "Le message que tu veux afficher"
    End If
     
    End Sub
    A+

    Edit: On peut bien sur tout faire via macro, à toi de dire ce que tu préfère.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 12
    Points : 10
    Points
    10
    Par défaut
    salut et avant toute chose, merci du coup de main

    alors voilà ce que j'ai fais :

    en cellule A2 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMME(SI(O7:O42>=50;1;0))
    et mon code macro :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    If Target.Column <> 15 Then Exit Sub 'Sort si le changement n'a pas lieu dans la colonne O
     
    If Sheets("feuil2").Range("A2") >= 10 Then 'Si le compte obtenu dans la cellule P1 >= à 10 alors
        MsgBox "ATTENTION : l'effectif retenu a atteint le nombre de 50 salariés au moins 10 fois sur les 36 derniers mois"
    End If
     
    End Sub
    mais en cellule A2 j'ai une erreur #VALEUR! et donc la macro ne marche pas ... pas bien compris le pourquoi du comment, une idée peut-être ?

    merci encore

  4. #4
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2009
    Messages
    1 794
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 85
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1 794
    Points : 3 094
    Points
    3 094
    Par défaut
    Bonjour,

    En A2 c'est une formule matricielle qui doit être validée par appuis sur Ctrl+Maj+Enter

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 12
    Points : 10
    Points
    10
    Par défaut
    ah d'accord, j'avais pas pigé le coup de la matrice (première fois que j'utilise ça). ça a l'air de rouler comme ça ... merci à tous les deux et bonne journée !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 27/11/2009, 09h21
  2. Réponses: 2
    Dernier message: 25/03/2009, 09h45
  3. Réponses: 0
    Dernier message: 17/02/2009, 16h13
  4. Réponses: 12
    Dernier message: 29/10/2008, 15h27
  5. Ajout d'un certains nombre de mois sur une date
    Par ksper45 dans le forum Linux
    Réponses: 4
    Dernier message: 06/11/2007, 16h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo