Problème de formule

  • Initiateur de la discussion Initiateur de la discussion ELISE
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

E

ELISE

Guest
Bonjour,

Dans un planning j'ai une formule trop longue.
Peut-être est-elle mal formulée ?

Formule avec SOMMEPROD et 41 conditions derrière, mais excel ne valide pas..

Si quelqu'un est disponible...pour me donner son avis...
 

Pièces jointes

Re : Problème de formule

Bonjour elise et bienvenue sur ce forum

Dans un planning j'ai une formule trop longue.
Peut-être est-elle mal formulée ?
Une simplification est certainement possible, à voir

Formule avec SOMMEPROD et 41 conditions derrière, mais excel ne valide pas..
Tu m'étonnes 🙄

Si quelqu'un est disponible...pour me donner son avis...
Un cahier des charges pour le forum ... nous te ferons un petit code en VBA

A+
 
Re : Problème de formule

Bonsoir Elise, Bruno🙂,
Sommeprod supporte jusqu'à 255 matrices donc ce n'est pas 41 conditions qui devraient le faire reculer.
Mais quand même, 41 conditions... il y a peut-être moyen de simplifier.
Pour le reste, comme je ne sais pas ce que tu veux obtenir au final, je ne peux t'aider.
A+
 
Re : Problème de formule

Bonjour,

Tout d'abord merci de vous intéresser à mon cas. pour ma part 3 jours dessus et je désespère.
J'ai créé une liste de code. Chaque code est nommé et fait référence à une cellule.
Ex. : le code CJA fait référence à la cellule I11 donc 12 (c'est le nombre travaillé dans la journée)

En faite le but étant de calculer un nombre d'heure si c'est un jour férié (1ère condition)

2ème condition : vérifier la ligne "théorique" (C3:AF3) quel code elle contient
par exemple si c'est CJA = 12 - CJ = 11,5 - MJA = 12 etc.....

3ème condition : vérifier si la ligne "Ajout" (C4:AF4) est renseignée. si elle est vide alors prendre la valeur de la ligne "Théorique" sinon prendre la ligne "Ajout". Mais si les deux sont renseignées alors prendre la ligne "Ajout". Et c'est là que c'est compliqué car j'ai 6 codes donc 30 possibilités...(je crois les avoir toutes envisagées)

4ème condition : vérifier que les lignes "Absence" "théorique" "Ajout" soient renseignées, si c'est le cas alors calcul = 0
Ce qui revient à dire que si la personne devait travailler et est absente alors 0

et 5ème condition si toutes les lignes sont vide alors calculer 7*E2 (nbre d'heure * etp)

Voilà c'est très compliqué. Avec 3 codes il était possible de construire ma formule mais avec 6 codes j'ai le message "Formule trop longue"

Peut être y a-t-il un moyen de simplifier...
 
Re : Problème de formule

Bonjour Elise,

Pour qu'on puisse t'aider (ou tenter de t'aider), il serait intéressant de nous joindre ton fichier avec des éléments chiffrés.

En remplissant quelques cellules avec quelques codes et en nous donnant le résultat attendu pour les colonnes AH et AI.

Connaissant le résultat souhaité, il sera peut-être plus facile de comprendre.

Une première approche avec cette formule matricielle (à valider par CTRL + MAJ + ENTREE) :

Code:
=SOMME(SI(ESTNUM(EQUIV(MFC!$J$3:$J$17;C4:AF4;0));MFC!$I$3:$I$17))/24

permet d'obtenir le total des heures correspondant aux codes de la ligne 4.

Reste à intégrer les autres conditions quand nous aurons pu mieux comprendre.

A te (re)lire avec un fichier chiffré et commenté

@+
 
Re : Problème de formule

Bonjour à tous,

J'ai mis quelques exemples....
Tibo j'ai testé ta formule mais le résultat n'est pas celui voulu, mais on dirait tout de même que ça simplifie...
c'est déjà un début.
 

Pièces jointes

Re : Problème de formule

Bonjour,

Sans trop de conviction, mais est ce qu'en changeant la place des parentheses dans ta formules, comme ci dessous, le résultat correspond à ce que tu souhaites ?
Code:
=SOMMEPROD((NB.SI(feries;$C$1:$AF$1))*((C3:AF3="cja")*(C4:AF4="")*(C5:AF5="")*(CJA))+((C3:AF3="")*(C4:AF4="cja")*(CJA))+((C3:AF3="cj")*(C4:AF4="cja")*(CJA))+((C3:AF3="cjA")*(C4:AF4="cj")*(CJ))+((C3:AF3="cj")*(C4:AF4="")*(C5:AF5="")*(CJ))+((C3:AF3="")*(C4:AF4="cj")*(CJ))+((C3:AF3="cjv")*(C4:AF4="cja")*(CJA))+((C3:AF3="cjA")*(C4:AF4="cjv")*(CJV))+((C3:AF3="cjv")*(C4:AF4="")*(C5:AF5="")*(CJV))+((C3:AF3="")*(C4:AF4="cjv")*(CJV))+((C3:AF3="cj")*(C4:AF4="cjv")*(CJV))+((C3:AF3="cjv")*(C4:AF4="cj")*(CJ)))
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 problème d'index
Réponses
19
Affichages
498
Réponses
16
Affichages
506
Réponses
9
Affichages
564
Retour