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 :

somme matricielle en fonction d'une formule INDEX(EQUIV


Sujet :

Excel

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 46
    Points : 25
    Points
    25
    Par défaut somme matricielle en fonction d'une formule INDEX(EQUIV
    Bonjour,

    Est-il possible d'utiliser la formule conditionnelle INDEX(EQUIV pour critéres de recherche , pour obtenir une somme matricielle ?

    En résumé voici ma formule " Critéres de recherche"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =INDEX(Couverture_DFI!$M$12:$O$13;EQUIV($A4;Couverture_DFI!$M$12:$M$13;0);EQUIV($I$2;Couverture_DFI!$N$11:$O$11;0)+1))
    pour essayer d'aboutir a une somme matricielle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INDEX(Couverture_DFI!$M$12:$O$13
    avec pour critère "colonne"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    EQUIV($A4;Couverture_DFI!$M$12:$M$13;0)
    et ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    EQUIV($I$2;Couverture_DFI!$N$11:$O$11;0)+1)
    )[/

    ou tout autre solution pour le résultat recherché

    Bien Cdt

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    660
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 660
    Points : 782
    Points
    782
    Par défaut
    Bonjour,

    En joignant un bout de fichier à ta question, et en précisant le résultat que tu souhaites obtenir, ce serait plus facile pour essayer de t'aider.

  3. #3
    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 karim19 et Bonne et heureuse année à tous
    Tu veux d'autres formules qui ne fonctionnent pas ? parce que j'en ai plein . Mais pour t'aider, au lieu de donner des bouts de code, dit réellement ce que doit faire la formule!!!
    On n'est ni magicien, ni devin, ni dans ta tête, et t'es devant l'écran, ce qui fait qu'on ne peut pas le voir par-dessus ton épaule.

    Ce n'est pas parce que tu as dans l'idée qu'on doit passer par index et equiv que c'est forcément comme ça que tu obtiendras ton résultat : Index et Equiv vont donner une ligne/colonne particulière, et vraisemblablement c'est une somme que tu veux obtenir, une somme suivant de multiples critères. Mais vu ton sujet, il faudrait décoder les formules qui ne fonctionnent pas pour découvrir le but de la formule. Donne-le et on t'aidera!!!
    A+

  4. #4
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 46
    Points : 25
    Points
    25
    Par défaut
    Bonjour à vous tous (Gorfael et ullan) et Bonne Année

    Merci de vos réponses, effectivement ce n'est pas trés clair et mon obstination à vouloir utiliser index(equiv n'est pas approprié !

    en essayant d'etre clair (et en vous joignant le fichier)

    Je voudrais faire une somme conditionnelle sur l'onglet Synthése , à partir de l'onglet Base avec pour critére: les réf de la colonne "A"
    : les réf de la ligne 1

    j'ai squizzé le probléme en utilisant cette formule matricielle

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMME(SI($A3=Base!$A$3:$A$300;Base!B$3:B$300;0))
    Mais elle implique de respecter le formatage (l'ordre des réfs en ligne sur les
    deux onglets). Base!B$3:B$300 (le décalage se fait en dynamique avec l'usage du $
    Est-il possible de faire autrement, voici ma question ?

    Bien Cdt à vous tous
    Fichiers attachés Fichiers attachés

  5. #5
    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 karim19 et bonne et heureuse année
    Pas sûr de savoir ce que tu veux exactement : B4 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((A$4=Base!$A$2:$A$250)*INDIRECT(ADRESSE(2;EQUIV(B$2;Base!1:1;0);;;"Base") & ":" & ADRESSE(250;EQUIV(B$2;Base!1:1;0);;;)))
    Fera la somme des valeurs dont la la valeur en A est égale à celle en A4 et la colonne est déterminée par la valeur en ligne 1.
    A+

  6. #6
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 46
    Points : 25
    Points
    25
    Par défaut
    Bonjour

    Et milles excuses pour la réponse tardive Gorfael

    l'idée est la bonne,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((A$4=Base!$A$2:$A$250)*INDIRECT(ADRESSE(2;EQUIV(B$2;Base!1:1;0);;;"Base") & ":" & ADRESSE(250;EQUIV(B$2;Base!1:1;0);;;)))
    Peut on ler fa

  7. #7
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 46
    Points : 25
    Points
    25
    Par défaut
    Bonjour

    Et milles excuses pour la réponse tardive Gorfael

    l'idée est la bonne,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((A$4=Base!$A$2:$A$250)*INDIRECT(ADRESSE(2;EQUIV(B$2;Base!1:1;0);;;"Base") & ":" & ADRESSE(250;EQUIV(B$2;Base!1:1;0);;;)))
    Peut on le faire en disposant, , comme étant une variable faisant référence à un onglet, ce qui implique deux problèmes

    comment la taduire dans cette formule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    EQUIV(B$2;Base!1:1;0);;;"Base") 
    et lui dire que la matrice de recherche dans la formule EQUIV au ra pour variable un onglet : disons variable en cellule B2 $C$3:$C$100

    dans mon fichier

    en ligne 2, je repertorie les différents onglets ( pour exemple de 1 à 16)

    les onglets sont formatés à l'identique


    Bien Cdt

  8. #8
    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 karim19 et le forum
    Je vois que je ne suis pas le seul à qui le forum (ou le micro) fait des farces

    Comme je ne suis pas sûr de comprendre, Juste une idée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INDIRECT(ADRESSE(2;EQUIV(B$2;Base!1:1;0);;;"Base")...
    Adresse sert à créer un texte que Indirect va transformer en une référence admissible par Excel.
    fait des tests avec juste : =adresse(2;1;;;B2) Le but étant de retrouver un retour d'excel conforme à une adresse :si B2 contient Base, tu devrais te retrouver avec Base!$A$2
    A+

  9. #9
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 46
    Points : 25
    Points
    25
    Par défaut
    Bonjour Gorfael et le Forum

    Effectivement, pettit accro

    j' ai bien essayé cette formule, comme tu le présentes si bien, il aurait du le transformer en Réf admissible par excell mais que nini rien à faire il ne veut rien entendre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMME(SI($A23=(ADRESSE(2;1;;;B$22)&":"&ADRESSE(1000;1));(ADRESSE(2;2;;;B$22)&":"&ADRESSE(1000;2));0))
    Y'a t'il une raison ? qui m'échappe certainement !!

    Onglet Synthése de ma nouvelle piéce jointe ( en bas de page, en charactère BLEU)

  10. #10
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 46
    Points : 25
    Points
    25
    Par défaut
    Pardonnez moi avec la pièce jointe
    Fichiers attachés Fichiers attachés

  11. #11
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 46
    Points : 25
    Points
    25
    Par défaut
    Bonjour, Gorfael et à vous tous

    Pour les personnes intéressés, voici la solution à mon probléme

    Pour info : faire une somme-si conditionnelle, en récupérant les matrices sur les divers onglets

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(ESTERREUR(SOMMEPROD((INDIRECT("'"&G$3&"'!$A$2:$A$1000")=$A23)*INDEX(INDIRECT("'"&G$3&"'!$B$2:$B$1000");EQUIV($A23;INDIRECT("'"&G$3&"'!$A$2:$A$1000");0))));0;SOMMEPROD((INDIRECT("'"&G$3&"'!$A$2:$A$1000")=$A23)*INDEX(INDIRECT("'"&G$3&"'!$B$2:$B$1000");EQUIV($A23;INDIRECT("'"&G$3&"'!$A$2:$A$1000");0))))
    Merci
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. [2008R2] Somme mobile en fonction d'une date
    Par amraguts dans le forum SSAS
    Réponses: 8
    Dernier message: 23/09/2011, 14h27
  2. [SSRS] [2K5] Somme sur le résultat d'une formule
    Par vero1013 dans le forum SSRS
    Réponses: 1
    Dernier message: 08/11/2010, 20h32
  3. [E-07] Difficulté avec la formule index/equiv
    Par Bloubee dans le forum Excel
    Réponses: 5
    Dernier message: 03/11/2008, 09h24
  4. Réponses: 1
    Dernier message: 28/09/2007, 15h59
  5. Réponses: 6
    Dernier message: 18/01/2005, 16h24

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