Addition de double condition a partir de liste de nom
bonjour à tous, et meilleurs voeux!
je suis bloqué par ma feuille de recap de données.
explications:
j'ai 1 onglet avec une liste de matériel pour les Lignes et les date J en colonne.
pour chaque ligne (matériel) correspond un état (C,S,E ouR) à la date du jour.
chaque modèle de matériel est répertorié dans Liste_Pompes (gestionnaire de noms).
Je voudrais à l'activation de ma page recap, mettre à jour mon tableau avec:
par ligne 1 modèle de pompe
par colonne 1 état (C, S, R ou E + 2 stat)
à l'intersection le nombre de pompe concernée dans la colonne de ce jour (A2).
voir tableau voulu en 'exemple'!
j'ai un semblant de résultat avec 'MonDico' que je ne maîtrise pas très bien, mais je veux pouvoir voir si le résultat est 0 (impossible avec 'MonDico'). (voir code et resultat en 'recap'!)
d'avance merci pour vos conseils et orientation.
Bonsoir,
Je ne sais pas si j'ai compris? Je n'ai pas eu le courage de décortiquer le code pour déterminer si c'était le cas.
Ce que j'ai compris: dans la feuille exemple, tu veux compter le nombre de 'C', 'R', 'S', etc pour chaque type de pompe, à la date du jour, dans la feuille correspondant à l'année renseignée en A2.
Si c'est bien ça, on aurait pu "alléger" le fichier pour n'y conserver que les données utiles à la compréhension (une idée des résultats attendus aurait en outre permis de vérifier si on parlait de la même chose
Bref, une proposition par formules:
- j'ai modifié la formule en C4 (il me semble que les 10 types de pompes n'y apparaissaient pas avec ta formule!?). Je propose
=SI(LIGNES($1:1)>NBVAL(Liste_Pompes);"";INDEX(Liste_Pompes;LIGNES($1:1);1))
À recopier vers le bas jusqu'à "couvrir" le nombre maximum de pompes qui pourraient y apparaître - En D4, tester
=NB.SI.ENS(DECALER(INDIRECT(ANNEE($A$2)&"!b2");;;NBVAL(INDIRECT(ANNEE($A$2)&"!a:a")));$C4;DECALER(INDIRECT(ANNEE($A$2)&"!a2");;EQUIV($A$2;INDIRECT(ANNEE($A$2)&"!a6:oy6");0)-1;NBVAL(INDIRECT(ANNEE($A$2)&"!a:a")));D$3)
et recopier vers le bas. Tant que la plage est sélectionnée, la copier et la coller en F4, H4 et I4.
Bonne soirée (et bonne année 2018
bonjour,
tu as tout compris, MERCI!
effectivement, il me manque les 2 premiers modèles de ma liste. je n'arrive pas a faire démarrer ma liste de pompe en la décalant de 2 lignes plus bas...mais ta formule me va bien si elle se met à jour quand je rajoute un modèle à ma liste.
pour les 2 autres colonnes, rien a voir avec la date du jour. les infos sont à prendre dans les col L ou H. je t'ai noté en rouge le résultat attendu.
vraiment merci bcp!
Bonjour,
les infos sont à prendre dans les col L ou H
Euh ...
[Edit:] Ah si, je viens de voir les titres des colonnes au-dessus des chiffres en rouge
Ben alors, en E4, je dirais qu'on peut écrire:
=NB.SI.ENS(INDIRECT(ANNEE($A$2)&"!L6:L500");"<30";INDIRECT(ANNEE($A$2)&"!B6:B500");$C4)... Le problème est que certains résultats sont différents, selon qu'on regarde tes chiffres en rouge ou les résultats de la formule
Je te laisse regarder si tu peux adapter en colonne G
re,
merci c'est vraiment ça.
par contre, pour formuler la dernière, c'est plus compliqué:
le critère de la plage1 "=date-cell>30"
j'ai essayé
=NB.SI.ENS(INDIRECT(ANNEE($A$2)&"!H8:H500");AUJOURDHUI()-"H8:H500">30;INDIRECT(ANNEE($A$2)&"!B8:B500");$C4)
d'ailleurs, pourquoi commences-tu à H6 et non H8?
Je te dirais bien que c'était pour voir si tu étais attentifpourquoi commences-tu à H6 et non H8
Pour la formule plus compliquée, s'il s'agit de compter le nombre de dates antérieures à "il y a 30 jours", on peut sans doute écrire la formule suivante:
=NB.SI.ENS(INDIRECT(ANNEE($A$2)&"!h6:h500");"<"&AUJOURDHUI()-30;INDIRECT(ANNEE($A$2)&"!B6:B500");$C4)... Mais je n'ai, à nouveau, pas exactement les mêmes résultats que dans tes chiffres en rouge !?
Note: dans les dernières propositions, je n'ai plus utilisé de système pour que l'étendue -en hauteur- de la plage, dans la feuille concernée soit "dynamique". On peut bien sûr le faire encore (peut-être en nommant les plages avec DECALER, pour ne pas compliquer encore la formule?)
géant!
merci!!!
pour ce qui est des valeurs en rouge, elles sont <0. il faut rajouter les orange (0<x<30). J'ai vérifié, on est bon.
j'ai rajouter le décaler partout, on rajoute pas mal de ligne....
par hasard, j'essaye de faire un filtre sur la feuille 2018 lorsque je clique sur ma valeur de 'recap'!
par ex, si je clique sur C&S B en E (D8=3), je voudrais filtrer la page 2018 par C&S B ; + E à date du jour.
https://forum.excel-pratique.com/viewtopic.php?f=2&t=79684
en tout cas, merci pour tout ca!
Bonjour,
Si "on est bon", c'est tant mieux
Pour ton autre question, à mon avis, il vaut mieux créer une nouvelle discussion.