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 :

Sommeprod et multicritères de recherche [XL-2007]


Sujet :

Excel

  1. #1
    Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 13
    Points : 4
    Points
    4
    Par défaut Sommeprod et multicritères de recherche
    Bonjour à tous,

    J'ai un sur un onglet environ 160 000 lignes dans lequel figures plusieurs colonnes parmis lesquelles "Mois", "Zone de prod", "Marque", "Client", "Saison" et "Quantité".
    Sur un autre onglet, pour chaque colonne ci-dessus, j'ai créé des menus déroulants correspondants aux critères figurants dans ces colonnes.

    Voici mon problème:

    Avec sommeprod j'arrive à afficher la somme des données correspondants à par exemple zone de prod1*marque1*client1*saison2. Je n'ai aucun problème pour afficher la somme des données pour un critère choisis par colonne.

    Comment pourrais-je faire la même chose mais en choisissant par exemple de regrouper les données de 2 clients en même temps voir plus? soit par exemple prod1*marque1*client1+client2*saison1
    Et en développant plus loin choisir 2 clients et 2 marques et afficher la somme du tout et etc en multipliant les critères de recherche par colonne.

    J'espère être assez clair. Je suis nul en vba

    En vous remerciant par avance.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 130
    Points : 2 443
    Points
    2 443
    Par défaut
    Salut Destrooper et le forum
    (((Client=Client1) + (Client=Client2))=1)
    A+

  3. #3
    Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 13
    Points : 4
    Points
    4
    Par défaut
    Bonjour Gorfael et merci de ta réponse.

    Je dois avouer que je ne comprends pas. J'ai très mal dormi désolé.

    Mes menus déroulant renvoie des valeurs dans des cases qui me permettent de définir mon choix.

    Même si j'opte pour des cases à cocher pour choisir deux clients voir plus au lieu d'un seul, comment dois-je interpréter ca dans ma formule.

    Client est une variable? Que tu définis comment? Je suis perdu désolé.

    Je vais essayer de faire un fichier exemple pour cet après midi pour vous donner un aperçu de ce que je souhaite arriver à faire.

    Dans l'état actuel, il fonctionne mais seulement pour un critère choisis par colonne ( un seul client ou une seule marque simultanément).

  4. #4
    Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 13
    Points : 4
    Points
    4
    Par défaut
    J'ai eu un petit peu de temps pour vous faire un fichier.

    J'ai deux formules possibles, une avec SOMMESI et une autre avec SOMMEPROD.

    Dans l'état actuel cela me permet de consulter uniquement en chosissant un seul critère par champ et cela ne me donne pas le total (le "ALL" dans les menus ne sert à rien).

    Je pense que si par exemple je veux choisir deux clients en même temps et additionner les quantités il faut que je fasse plutôt des cases à cocher mais je ne vois pas ensuite comment répercuter ces choix dans ma formule.

    Pouvez-vous m'aider.

    J'ai bien essayé en VBA mais je manque de temps pour apprendre et je ne m'en sors pas.

    En vous remerciant par avance.
    Fichiers attachés Fichiers attachés

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    357
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2008
    Messages : 357
    Points : 417
    Points
    417
    Par défaut
    Bonjour,

    Voici une solution qui te permettra au moins d'utiliser les "ALL"
    Il faut dans un premier temps modifier les formules en colonne A :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    A5: =SI(B5=3;"DATAS!C2:C100";"TABLE!B"&B5+1)
    A7: =SI(B7=5;"DATAS!D2:D100";"TABLE!C"&B7+1)
    A9: =SI(B9=5;"DATAS!E2:E100";"TABLE!D"&B9+1)
    A11: =SI(B11=5;"DATAS!F2:F100";"TABLE!E"&B11+1)
    A13: =SI(B13=3;"DATAS!G2:G100";"TABLE!F"&B13+1)
    Ensuite en cellule I10 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((DATAS!$B$2:$B$100=I3)*(DATAS!$C$2:$C$100=INDIRECT($A$5))*(DATAS!$D$2:$D$100=INDIRECT($A$7))*(DATAS!$E$2:$E$100=INDIRECT($A$9))*(DATAS!$F$2:$F$100=INDIRECT($A$11))*(DATAS!$G$2:$G$100=INDIRECT($A$13))*DATAS!$H$2:$H$100)
    Il ne te reste plus qu'à recopier cette dernière pour les autres mois

  6. #6
    Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 13
    Points : 4
    Points
    4
    Par défaut
    Super merci beaucoup. Je ne savais pas que l'on pouvait faire ça. Génial.

  7. #7
    Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 13
    Points : 4
    Points
    4
    Par défaut
    Est-il possible d'adapter la formule que vous m'avez donné avec une liste déoulante adaptative. Je m'explique: Je voudrais cumuler une des formules que vous m'avez donné à savoir

    =SI(B9=5;"DATAS!E2:E100";"TABLE!D"&B9+1)

    avec

    =DECALER(TABLE!$D$1;1;0;NBVAL(TABLE!$D:$D)-1;1)

    Est-ce possible? Je ne pense pas vu qu'il n'y a plus de cellule liée mais je demande quand même ^^

    De cette façon si un nouveau client arrive, je n'aurai juste qu'à rajouter son nom dans la table.

  8. #8
    Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 13
    Points : 4
    Points
    4
    Par défaut
    A david 2304:

    J'ai modifié le fichier quelque peu:

    Pour le menu deroulant "Marque" en B35

    =SI(A35=17;"DATAS!C2:C161408";"TABLE!C"&A35+1)
    Pour le menu déroulant "Segment" en B39

    =SI(A39=7;"DATAS!D2161408";"TABLE!D"&A39+1)
    Pour le menu deroulant "Saison" en B43

    =SI(A43=3;"DATAS!E2:E161408";"TABLE!E"&A43+1)
    Le calcul est (C1 = mois et B2 = client)

    =SOMMEPROD((DATAS!$A$2:$A$161048=C1)*(DATAS!$B$2:$B$161048=B2)*(DATAS!$C$2:$C$161048=INDIRECT(ANALYSE!$B$35))*(DATAS!$D$2:$D$161048=INDIRECT(ANALYSE!$B$39))*(DATAS!$E$2:$E$161048=INDIRECT(ANALYSE!$B$43))*DATAS!$P$2:$P$161048)
    Le calcul me renvoie N/A#

    J'ai l'impression d'avoir fait une bêtise .. je pense au niveau des formules des menus déroulant.

  9. #9
    Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 13
    Points : 4
    Points
    4
    Par défaut
    Je pense avoir trouvé, La fonction indirect ne fonctionne que sur la page sur laquelle elle se trouve.

    Si je met =INDIRECT(ANALYSE!$B$35) mais que la fonction indirect se situe sur une autre page que la page ANALYSE, elle me renvoie la plage B35 de sa page. C'est bien ça? Une solution pour palier ça? Sinon je transfère les formules B35, B39 et B43 sur la page ou se situe ma fonction indirect.

  10. #10
    Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 13
    Points : 4
    Points
    4
    Par défaut
    En fait non la fonction indirect me renvoie bien le bon résultat sur l'autre page. C'est quand je sélectionne ALL dans les menus deroulant que cela ne fonctionne plus. David peux-tu m'aider?

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    357
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2008
    Messages : 357
    Points : 417
    Points
    417
    Par défaut
    Bonjour,

    Désolé de ne pas avoir pu regarder plus tôt, j'ai pas mal de boulot en ce moment.

    Tu as fait beaucoup trop de modifs à ton fichier pour que je puisse t'aider, il faudrait que tu renvoies une nouvelle version limitée

    Pour info je suis en Excel 2003 donc limité à 65536 lignes

  12. #12
    Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 13
    Points : 4
    Points
    4
    Par défaut
    Je prépare un fichier tout à l'heure et je le limiterai à 65 000 lignes

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

Discussions similaires

  1. [MySQL] Formulaire multicritère de recherche
    Par totot dans le forum PHP & Base de données
    Réponses: 43
    Dernier message: 20/08/2013, 18h59
  2. [XL-2007] Fonction SOMMEPROD sur plages de recherche variables
    Par 2lester dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/03/2012, 17h31
  3. Recherche multicritère
    Par Darlay Jean_Louis dans le forum Access
    Réponses: 2
    Dernier message: 26/10/2005, 09h54
  4. Réponses: 2
    Dernier message: 01/10/2005, 18h42
  5. recherche multicritères
    Par onlineduel dans le forum Débuter
    Réponses: 3
    Dernier message: 30/03/2004, 16h15

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