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 :

Est il possible de réduire ma formule? [XL-2007]


Sujet :

Excel

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 75
    Points : 35
    Points
    35
    Par défaut Est il possible de réduire ma formule?
    Bonsoir à tous,
    j'ai utilisé une formule avec des fonctions SI, ET imbriquées, et j'aimerais savoir s'il est possible de réduire la taille de celle ci?

    Voici la formule:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    =SI(ET(C4=horaires!$D$14;D4=horaires!$C$15);horaires!$D$15;SI(ET(C4=horaires!$D$14;D4=horaires!$C$16);horaires!$D$16;SI(ET(C4=horaires!$D$14;D4=horaires!$C$17);horaires!$D$17;SI(ET(C4=horaires!$E$14;D4=horaires!$C$15);horaires!$E$15;SI(ET(C4=horaires!$E$14;D4=horaires!$C$16);horaires!$E$16;SI(ET(C4=horaires!$E$14;D4=horaires!$C$17);horaires!$E$17;SI(ET(C4=horaires!$F$14;D4=horaires!$C$16);horaires!$F$16;SI(ET(C4=horaires!$F$14;D4=horaires!$C$17);horaires!$F$17))))))))+SI(ET(C5=horaires!$D$14;D5=horaires!$C$15);horaires!$D$15;SI(ET(C5=horaires!$D$14;D5=horaires!$C$16);horaires!$D$16;SI(ET(C5=horaires!$D$14;D5=horaires!$C$17);horaires!$D$17;SI(ET(C5=horaires!$E$14;D5=horaires!$C$15);horaires!$E$15;SI(ET(C5=horaires!$E$14;D5=horaires!$C$16);horaires!$E$16;SI(ET(C5=horaires!$E$14;D5=horaires!$C$17);horaires!$E$17;SI(ET(C5=horaires!$F$14;D5=horaires!$C$16);horaires!$F$16;SI(ET(C5=horaires!$F$14;D5=horaires!$C$17);horaires!$F$17))))))))+SI(ET(C6=horaires!$D$14;D6=horaires!$C$15);horaires!$D$15;SI(ET(C6=horaires!$D$14;D6=horaires!$C$16);horaires!$D$16;SI(ET(C6=horaires!$D$14;D6=horaires!$C$17);horaires!$D$17;SI(ET(C6=horaires!$E$14;D6=horaires!$C$15);horaires!$E$15;SI(ET(C6=horaires!$E$14;D6=horaires!$C$16);horaires!$E$16;SI(ET(C6=horaires!$E$14;D6=horaires!$C$17);horaires!$E$17;SI(ET(C6=horaires!$F$14;D6=horaires!$C$16);horaires!$F$16;SI(ET(C6=horaires!$F$14;D6=horaires!$C$17);horaires!$F$17))))))))+SI(ET(C7=horaires!$D$14;D7=horaires!$C$15);horaires!$D$15;SI(ET(C7=horaires!$D$14;D7=horaires!$C$16);horaires!$D$16;SI(ET(C7=horaires!$D$14;D7=horaires!$C$17);horaires!$D$17;SI(ET(C7=horaires!$E$14;D7=horaires!$C$15);horaires!$E$15;SI(ET(C7=horaires!$E$14;D7=horaires!$C$16);horaires!$E$16;SI(ET(C7=horaires!$E$14;D7=horaires!$C$17);horaires!$E$17;SI(ET(C7=horaires!$F$14;D7=horaires!$C$16);horaires!$F$16;SI(ET(C7=horaires!$F$14;D7=horaires!$C$17);horaires!$F$17))))))))+SI(ET(C8=horaires!$D$14;D8=horaires!$C$15);horaires!$D$15;SI(ET(C8=horaires!$D$14;D8=horaires!$C$16);horaires!$D$16;SI(ET(C8=horaires!$D$14;D8=horaires!$C$17);horaires!$D$17;SI(ET(C8=horaires!$E$14;D8=horaires!$C$15);horaires!$E$15;SI(ET(C8=horaires!$E$14;D8=horaires!$C$16);horaires!$E$16;SI(ET(C8=horaires!$E$14;D8=horaires!$C$17);horaires!$E$17;SI(ET(C8=horaires!$F$14;D8=horaires!$C$16);horaires!$F$16;SI(ET(C8=horaires!$F$14;D8=horaires!$C$17);horaires!$F$17))))))))
    Désolé, c'est pas très lisible.

    Merci par avance pour ceux qui pourront m'aider si cela est possible

  2. #2
    Membre habitué Avatar de Djohn
    Profil pro
    Inscrit en
    Février 2007
    Messages
    309
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 309
    Points : 140
    Points
    140
    Par défaut
    Salut
    Le mieux serait de nous dire ce que tu souhaites obtenir comme résultat, avec si possible ton fichier.
    a+

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 75
    Points : 35
    Points
    35
    Par défaut
    Bonjour, voici le fichier

    Je souhaiterais, suivant mes choix dans le tableau semaine via mes listes, que ça choisisse dans le tableau temps, la cellule à l'intersection des deux.

    Exemple: dans le tableau semaine,ligne lundi, je choisis a la colonne E: matin, et la colonne M: soir, la cellule D6 du tableau temps doit être prise en compte. Ainsi de suite pour les autres jours du tableau.

    Et pour finir, j'aimerais, que dans la cellule C20, qu'apparaisse le total des 5 jours suivant mes choix.
    J'espère avoir bien expliqué lol

    Merci pour ton aide
    Fichiers attachés Fichiers attachés

  4. #4
    Membre expérimenté
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    673
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 673
    Points : 1 580
    Points
    1 580
    Par défaut
    Bonjour,

    La fonction INDEX permet de sélectionner une valeur dans une table, à l'aide des numéros de ligne et de colonne.
    La fonction EQUIV permet de retrouver la position d'une valeur dans une liste.

    Dans ton cas, la matrice des valeurs est en D4:F6.

    Pour le lundi, la ligne à prendre est déterminée par la position de la valeur en D13 dans le vecteur C4:C6, ce qui donne De la même manière, la colonne est donnée par la position de la valeur en C13 dans le vecteur D3:F3
    La valeur à prendre est donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INDEX(D4:F6;EQUIV(D13;C4:C6;0);EQUIV(C13;D3:F3;0))
    Pour les jours suivants, il suffit d'avancer dans les lignes, ce qui donne
    pour le mardi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INDEX(D4:F6;EQUIV(D14;C4:C6;0);EQUIV(C14;D3:F3;0))
    pour le mercredi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INDEX(D4:F6;EQUIV(D15;C4:C6;0);EQUIV(C15;D3:F3;0))
    etc...

    Il ne reste ensuite plus qu'à additionner les 5 formules.

  5. #5
    Membre expert

    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2012
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 564
    Points : 3 554
    Points
    3 554
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Voici déjà une écriture un peu plus courte de la formule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    =INDEX($D$4:$F$6;EQUIV(D13;$C$4:$C$6;0);EQUIV(C13;$D$3:$F$3;0))+INDEX($D$4:$F$6;EQUIV(D14;$C$4:$C$6;0);EQUIV(C14;$D$3:$F$3;0))+INDEX($D$4:$F$6;EQUIV(D15;$C$4:$C$6;0);EQUIV(C15;$D$3:$F$3;0))
    +INDEX($D$4:$F$6;EQUIV(D16;$C$4:$C$6;0);EQUIV(C16;$D$3:$F$3;0))+INDEX($D$4:$F$6;EQUIV(D17;$C$4:$C$6;0);EQUIV(C17;$D$3:$F$3;0))
    Merci à qui m'expliquera pourquoi la formule matricielle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {= SOMME(INDEX($D$4:$F$6;EQUIV(D13:D17;$C$4:$C$6;0);EQUIV(C13:C17;$D$3:$F$3;0)))}
    ne donne pas la somme attendue mais seulement le premier terme INDEX($D$4:$F$6;EQUIV(D13;$C$4:$C$6;0);EQUIV(C13;$D$3:$F$3;0)).

    Edit : Je n'avais pas vu la réponse déjà donnée par tedo01 en rédigeant mon message mais ma question en 2ème partie reste posée.
    Cordialement
    Claude

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 75
    Points : 35
    Points
    35
    Par défaut
    Merci Tedo01 et papouclo, ca répond parfaitement à ma demande

    Bonne fêtes à vous

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

Discussions similaires

  1. [XL-2007] Formule + Filtre => Un lien est-il possible ?
    Par saurus dans le forum Excel
    Réponses: 4
    Dernier message: 26/05/2015, 13h14
  2. [VBA-XLA]Formule qui efface la cellule, est ce possible?
    Par EvaristeGaloisBis dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 14/06/2007, 13h51
  3. Réponses: 12
    Dernier message: 16/06/2006, 13h13
  4. Ne pas écraser la formule est-ce possible ?
    Par boosty dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 25/04/2006, 14h40
  5. [CR] Est il possible de créer des univers avec Seagate Info?
    Par Frank dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 27/06/2002, 15h22

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