Formule unique permettant de calculer depuis un TCD variable

Résolu/Fermé
Sam357 Messages postés 134 Date d'inscription dimanche 11 février 2007 Statut Membre Dernière intervention 15 mars 2018 - 28 juin 2013 à 17:11
Sam357 Messages postés 134 Date d'inscription dimanche 11 février 2007 Statut Membre Dernière intervention 15 mars 2018 - 1 juil. 2013 à 16:21
Bonjour à tous,

Je vous explique mon problème, j'ai placé sur plusieurs feuilles le même tableau croisé dynamique mais ces tableaux n'ont pas tous le mêmes nombres de lignes car

- F1 comporte une ligne pour (vide), une ligne pour 0 une autre pour 1 et une dernière pour Total général.

- F2 comporte une ligne pour (vide), une ligne pour 1 et une autre pour Total général.

- F3 comporte une ligne pour (vide) et une autre pour Total général.

La conséquence est que F1 renvoie le résultat demandé mais F2 ne peut pas que la ligne des 1 s'est déplacée.

Auriez vous une solution pour que cela fonctionne toujours quand les lignes ne sont plus présentes ou déplacées.

La pièce jointe se trouve ici : https://www.cjoint.com/?CFCrknmxenJ

Merci d'avance.

Sam 357

A voir également:

2 réponses

eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 211
28 juin 2013 à 23:14
Bonjour,

ton lien est incorrect, il y a le . en trop.

Et pourquoi pas plus simplement un seul TCD ou tu filtres ?
Sinon essaie en disant 'Non' à la question réutiliser les mêmes données. On ne peut pas tester sur ton fichier, il n'y a pas de données ni de TCD, juste une copie.

eric
0
Sam357 Messages postés 134 Date d'inscription dimanche 11 février 2007 Statut Membre Dernière intervention 15 mars 2018 18
1 juil. 2013 à 12:01
Bonjour Eriic,

Actuellement j'ai près de 15 feuilles avec une structure identique et une bonne vingtaine de TCD, sur chacune, qui se distinguent par le filtre sur F : F1 à F15 (une feuille pour chaque intervenant désigné F). Chaque cellule du TCD sert ensuite à alimenter un tableau de bord.

Sur mon doc F1 est le récap tout F confondus puis chacune des feuilles est propre à un F.
Je n'ai pas épilogué dans mon fichier mais pour certains intervenants je n'ai pas de problème puisque leur structure se composant des 4 lignes suivantes [(vide) ; 0 ; 1 ; Total général] correspond au cas dit standard mais parfois ma bdd ne me renvoie pas de 1 ou pas de 0 ce qui génère un décalage dans les lignes et entraîne des erreurs sur le résultat de ma formule (voir ci-dessous) qui est propre à une série de cellules.

Formule
J'avais initialement mis en B7 :

=SI(ET(B4="";B3>0,5);0;SI($A$11<1;"";SI(B4="";"";SI(ESTERREUR(B4/(B5-B2));"";B4/(B5-B2)))))

Ayant constaté que si certaines lignes venaient à manquer cela faussait le résultat, j'ai opté pour une recherchev (ce n'est peut être pas le plus adapté et surement aurez vous d'autres fonctions en tête mais c'est la seule que j'ai "su" utiliser ici.

=SI(ET(RECHERCHEV(1;$A$2:$M$5;2;FAUX)="";RECHERCHEV(0;$A$2:$M$5;2;FAUX)>0,5);0;SI($A$11<1;"";SI(RECHERCHEV(1;$A$2:$M$5;2;FAUX)="";"";SI(ESTERREUR(RECHERCHEV(1;$A$2:$M$5;2;FAUX)/(RECHERCHEV("total général";$A$2:$M$5;2;FAUX)-RECHERCHEV("(vide)";$A$2:$M$5;2;FAUX)));"";RECHERCHEV(1;$A$2:$M$5;2;FAUX)/(RECHERCHEV("total général";$A$2:$M$5;2;FAUX)-RECHERCHEV("(vide)";$A$2:$M$5;2;FAUX))))))

Avec celle-ci encore, j'ai parfois des #N/A (voir les feuilles F2 & F3et je ne sais pas ce qui cloche.

Ce que je souhaiterais au final c'est :

- avoir une cellule vide s'il n'y a pas de données sur la période
- avoir un pourcentage lorsque j'ai des 0 et des 1.


@Eriic, je viens de mettre un nouveau fichier dans lequel chaque feuille contient en B7 la formule basée sur des recherchev.

http://cjoint.com/data3/3Gbl6RreBAG.htm

Merci.
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 211
Modifié par eriiic le 1/07/2013 à 12:23
Bonjour,

je cherche les réponses à mes propositions et je ne trouve pas...
Et je répète :
On ne peut pas tester sur ton fichier, il n'y a pas de données ni de TCD, juste une copie.
Pas trop envie de chercher l'erreur dans ta formule à 9 recherchev() si c'est une mauvaise piste.

eric

edit: RECHERCHEV(0;$A$2:$M$5;2;FAUX) retourne #N/A puisqu'il n'y a pas de 0
edit2: oriente toi plutôt vers qcq chose comme :
=SI(NB.SI(A2:A4;"=1");"calcul1";"")
0
Sam357 Messages postés 134 Date d'inscription dimanche 11 février 2007 Statut Membre Dernière intervention 15 mars 2018 18
Modifié par Sam357 le 1/07/2013 à 16:21
eriiic,

Je viens de faire un essai sur le fichier test v2 avec ta deuxième proposition et ça semble fonctionner reste plus qu'à voir cela sur mon TDB.

Voici ce que ça donne en B7

=SI(ESTERREUR(RECHERCHEV(1;$A$2:$M$5;2;FAUX)/RECHERCHEV("Total Général";$A$2:$M$5;2;FAUX));"";SI(NB.SI($A$2:$A$4;"1");RECHERCHEV(1;$A$2:$M$5;2;FAUX)/RECHERCHEV("Total Général";$A$2:$M$5;2;FAUX);""))

Merci.
0
Sam357 Messages postés 134 Date d'inscription dimanche 11 février 2007 Statut Membre Dernière intervention 15 mars 2018 18
Modifié par Sam357 le 1/07/2013 à 11:11
...
0