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 :

Moyenne d'une plage en fonction de deux critères [XL-2010]


Sujet :

Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2014
    Messages : 90
    Points : 65
    Points
    65
    Par défaut Moyenne d'une plage en fonction de deux critères
    Bonjour à tous,

    Je souhaite faire la moyenne de différents indicateurs pour différents métiers.

    Alors mon fichier est structuré de la manière suivante :

    Métiers / Ind | Indicateur1 | Indicateur 2
    Métier 1 | X
    Métier 2

    Pour chaque métier et indicateur je souhaite avoir la moyenne. Cette moyenne doit être effectué Grace aux données présentes dans un onglet "Séléction globale". X serait donc la moyenne du métier 1 pour l'indicateur 1.

    En fait je veux faire la moyenne si indicateur 1 est retrouvé dans la plage $H$1:$BT$1 de l'onglet "Sélection globale" (en colonne) et si le métier est retrouvé dans la colonne C ($C$2:$C$1000) de l'onglet "Sélection globale" : Moyenne de ce métier pour l'indicateur en question

    Ma formule est la suivante, elle marche cependant j'aimerai ne pas avoir a renseigné la colonne ou se trouve l'indicateur ici I.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(ESTVIDE(A3);" ";MOYENNE(SI('Sélection globale'!$C$2:$C$1000=$A3;'Sélection globale'!I$2:I$1000)))
    Je ne sais pas si je suis clair.

    Cordialement

  2. #2
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    je conceptualise mal la structure de tes colonnes

    normalement, ton besoin correspond à la formule MOYENNE.SI.ENS si ta base de données est correctement agencée
    j'ai l'impression que tu nous expliques qu'une de tes colonne ne contient pas 1 type de données, mais deux types séparés par un /, ce qui expliquerait ta difficulté à utiliser une formule uniforme.

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2014
    Messages : 90
    Points : 65
    Points
    65
    Par défaut
    Salut Joe !

    Mes colonnes sont bien agencées ! Je me suis mal exprimer : J'ai une donnée dans une cellule.

    Voici un fichier exemple : Moyenne_exemple.xlsx

    Je pense faudrait concaténer rechercheV et moyenne si ?

    A savoir rechercher le nom de l'indicateur dans la plage puis Moyenne.si métier en question

  4. #4
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    En fait, un seul critère semble nécessaire, ou je n'ai toujours pas bien cerné ton besoin

    prenons un exemple en image

    Nom : crit1.png
Affichages : 1236
Taille : 6,0 Ko

    en G1, j'indique l'indicateur de mon choix, qui correspond à l'en-tête d'une colonne de ma base de données
    en G2, la formule suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =MOYENNE(DECALER(B2:B4;;EQUIV(G1;B1:D1)-1))
    il me suffit de changer la valeur en G1, pour avoir la moyenne d'une autre indicateur
    une petite liste de validation de données en G1, ne comportant que la liste de tes indicateurs, et c'est ce que tu souhaites non ?

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2014
    Messages : 90
    Points : 65
    Points
    65
    Par défaut
    Ce n'est pas tout à fait ça ...

    Premier onglet : où je veux calculer mes moyennes pour chaque métier / indicateurs

    - J'ai mes différents métiers en ligne et mes différents indicateurs en colonnes. Cf image

    J'aimerai une formule (à la place des instructions en rouge) que je puisse étendre sur tout mon tableau. Calcul de la moyenne pour tous les boulangers/ les cuistots .. pour l'indicateur Nbr client / Taux / Mess ...


    Deuxième onglet "Sélection globale": il contient les données pour calculer les moyennes

    Structurer de la façon suivante :

    Nom : détails.png
Affichages : 1287
Taille : 19,0 Ko


    Actuellement, ma formule est la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {=MOYENNE(SI('Sélection globale'!$C$2:$C$1000=$A3;'Sélection globale'!I$2:I$1000)))}
    Premier si : Si le métier est égale à la cellule A3
    L'instruction suivante m'oblige à préciser la colonne ou l'indicateur est présent dans l'onglet "Séléction globale" ici la colonne I
    J'aimerai avec la formule qu'elle recherche toute seule la colonne ou est présent le nom de l'indicateur.

    Je ne sais pas si je suis clair ou je vous embrouille encore plus ?

  6. #6
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    Encore une proposition imagée :

    Nom : crit3.png
Affichages : 1608
Taille : 18,5 Ko

    chaque colonne de ma BDD est une plage nommée dont le nom est le titre de la colonne
    la ligne composant mes titres de colonne est également une plage nommée : TITRE_BDD

    pour le "BOULANGER / NB_CLIENT", formule :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =MOYENNE.SI(METIER;$I2;DECALER(CODE;;EQUIV(J$1;TITRE_BDD;0)-1))
    après, copier de la formule et coller dans tout le tableau

  7. #7
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2014
    Messages : 90
    Points : 65
    Points
    65
    Par défaut
    Niquel ça marche, par contre ça m'oblige a renommer toutes mes colonnes de ma BDD ...

    Et ça ne devrait pas mettre erreur si le titre de mon indicateur 1er onglet n'a pas le même nom que la colonne nommée dans ma BDD ?

  8. #8
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    tu peux nommer chaque colonne de ta BDD par macro si besoin

    un exemple, création pour chaque colonne d'une plage nommée dont le nom et le titre de la colonne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Sub PlageNommee()
     
    Dim ShNomFeuille As Worksheet
    Dim DerCol As Integer
     
    'feuille où est la BDD
    Set ShNomFeuille = ThisWorkbook.Worksheets("FeuilleBaseDeDonnees")
     
    With ShNomFeuille
        ' dernière colonne de la BDD
        DerCol = .Cells(1, Columns.Count).End(xlToLeft).Column
     
        For i = 1 To DerCol
            ' plage nommée de chaque colonne : le nom de la plage est le titre de la colonne
            .Names.Add Name:=.Cells(1, i), RefersToR1C1:= _
             "=OFFSET(" & .Name & "!R2C" & i & ",,,COUNTA(" & .Name & "!C" & i & ")-1,1)"
        Next i
    End With
     
    End Sub
    ne reste qu'à nommer manuellement ta plage avec les titres de colonnes


    Et du coup, il faudra effectivement que le nom de ton indicateur dans la BDD et le nom de l'indicateur de ton tableau de synthèse soit identique

    c'est la méthode la plus simple à utiliser et réutiliser, mais d'autres méthodes peuvent se baser sur la position de ton tableau de synthèse (mais on perd en souplesse OU en simplicité de formule)

  9. #9
    Nouveau Candidat au Club
    Femme Profil pro
    Acheteur
    Inscrit en
    Avril 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Acheteur
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2018
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Moyenne d'une plage en fonction de deux critères et exclusion de données
    Citation Envoyé par joe.levrai Voir le message
    Encore une proposition imagée :

    Nom : crit3.png
Affichages : 1608
Taille : 18,5 Ko

    chaque colonne de ma BDD est une plage nommée dont le nom est le titre de la colonne
    la ligne composant mes titres de colonne est également une plage nommée : TITRE_BDD

    pour le "BOULANGER / NB_CLIENT", formule :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =MOYENNE.SI(METIER;$I2;DECALER(CODE;;EQUIV(J$1;TITRE_BDD;0)-1))
    après, copier de la formule et coller dans tout le tableau


    Bonjour,

    est-il possible d'intégrer dans la formule une condition pour la sélection de la plage de données ?

    Dans la logique de l'exemple du post ci-dessus, je souhaite ajouter une condition pour que la moyenne ne se calcule que sur les données NB_CLIENT inférieur à 9.

    Quelle serait la formule ?

    Cordialement

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

Discussions similaires

  1. [Toutes versions] Insertion d'une ligne en fonction de deux critères
    Par Oliiv dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 24/10/2012, 23h55
  2. Parcourir une map en fonction de deux critères
    Par lucares dans le forum Collection et Stream
    Réponses: 11
    Dernier message: 29/09/2011, 20h51
  3. [XL-2003] Fonction Moyenne() d'une plage de cellule
    Par noxaRV dans le forum Excel
    Réponses: 5
    Dernier message: 23/02/2010, 10h32
  4. Réponses: 1
    Dernier message: 08/02/2009, 18h04
  5. Probleme vba pour renvoyer une valeur en fonction de deux criteres
    Par tarif dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/04/2008, 19h28

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