[RESOLU]probleme d'imbrication dans la formule

DragonBallZ1981

XLDnaute Nouveau
Bonsoir,

c'est encore moi.

J'ai un souci avec une formule qui est a paremment trops longue.

Dans ma première pages j'avais 50 tableau et comme j'en avais pas assez, je suis passé a 100 tableau, du coup obliger de changer certaine formule.

Le probleme apparait alors "impossible d'entrer la formule spécifiée car elle utilise plus de 64 niveaux d'imbrication"

Je pense qu'il y a donc trop de condition dans ma formule mais je vois pas comment faire autrement si quelqu'un pouvais m'aider. Merci

Voici ma formule d'avant (qui fonctionnais avec mes 50 tableaux)

=CONCATENER("<Page id=";CAR(34);SI('A remplir'!D3="";'A remplir'!B3;SI('A remplir'!D22="";'A remplir'!B22;SI('A remplir'!D41="";'A remplir'!B41;SI('A remplir'!D60="";'A remplir'!B60;SI('A remplir'!D79="";'A remplir'!B79;SI('A remplir'!D98="";'A remplir'!B98;SI('A remplir'!D117="";'A remplir'!B117;SI('A remplir'!D136="";'A remplir'!B136;SI('A remplir'!D155="";'A remplir'!B155;SI('A remplir'!D174="";'A remplir'!B174;SI('A remplir'!D193="";'A remplir'!B193;SI('A remplir'!D212="";'A remplir'!B212;SI('A remplir'!D231="";'A remplir'!B231;SI('A remplir'!D250="";'A remplir'!B250;SI('A remplir'!D269="";'A remplir'!B269;SI('A remplir'!D288="";'A remplir'!B288;SI('A remplir'!D307="";'A remplir'!B307;SI('A remplir'!D326="";'A remplir'!B326;SI('A remplir'!D345="";'A remplir'!B345;SI('A remplir'!D364="";'A remplir'!B364;SI('A remplir'!D383="";'A remplir'!B383;SI('A remplir'!D402="";'A remplir'!B402;SI('A remplir'!D421="";'A remplir'!B421;SI('A remplir'!D440="";'A remplir'!B440;SI('A remplir'!D459="";'A remplir'!B459;SI('A remplir'!D478="";'A remplir'!B478;SI('A remplir'!D497="";'A remplir'!B497;SI('A remplir'!D516="";'A remplir'!B516;SI('A remplir'!D535="";'A remplir'!B535;SI('A remplir'!D554="";'A remplir'!B554;SI('A remplir'!D573="";'A remplir'!B573;SI('A remplir'!D592="";'A remplir'!B592;SI('A remplir'!D611="";'A remplir'!B611;SI('A remplir'!D630="";'A remplir'!B630;SI('A remplir'!D649="";'A remplir'!B649;SI('A remplir'!D668="";'A remplir'!B668;SI('A remplir'!D687="";'A remplir'!B687;SI('A remplir'!D706="";'A remplir'!B706;SI('A remplir'!D725="";'A remplir'!B725;SI('A remplir'!D744="";'A remplir'!B744;SI('A remplir'!D763="";'A remplir'!B763;SI('A remplir'!D782="";'A remplir'!B782;SI('A remplir'!D801="";'A remplir'!B801;SI('A remplir'!D820="";'A remplir'!B820;SI('A remplir'!D839="";'A remplir'!B839;SI('A remplir'!D858="";'A remplir'!B858;SI('A remplir'!D877="";'A remplir'!B877;SI('A remplir'!D896="";'A remplir'!B896;SI('A remplir'!D915="";'A remplir'!B915;SI('A remplir'!D934="";'A remplir'!B934;'A remplir'!B934+1))))))))))))))))))))))))))))))))))))))))))))))))));CAR(34);" spoken=";CAR(34);1;CAR(34);CAR(62))

et voilà ma nouvelle formule qui me pose souci avec les 100 tableaux

=CONCATENER("<Page id=";CAR(34);SI('A remplir'!D3="";'A remplir'!B3;SI('A remplir'!D22="";'A remplir'!B22;SI('A remplir'!D41="";'A remplir'!B41;SI('A remplir'!D60="";'A remplir'!B60;SI('A remplir'!D79="";'A remplir'!B79;SI('A remplir'!D98="";'A remplir'!B98;SI('A remplir'!D117="";'A remplir'!B117;SI('A remplir'!D136="";'A remplir'!B136;SI('A remplir'!D155="";'A remplir'!B155;SI('A remplir'!D174="";'A remplir'!B174;SI('A remplir'!D193="";'A remplir'!B193;SI('A remplir'!D212="";'A remplir'!B212;SI('A remplir'!D231="";'A remplir'!B231;SI('A remplir'!D250="";'A remplir'!B250;SI('A remplir'!D269="";'A remplir'!B269;SI('A remplir'!D288="";'A remplir'!B288;SI('A remplir'!D307="";'A remplir'!B307;SI('A remplir'!D326="";'A remplir'!B326;SI('A remplir'!D345="";'A remplir'!B345;SI('A remplir'!D364="";'A remplir'!B364;SI('A remplir'!D383="";'A remplir'!B383;SI('A remplir'!D402="";'A remplir'!B402;SI('A remplir'!D421="";'A remplir'!B421;SI('A remplir'!D440="";'A remplir'!B440;SI('A remplir'!D459="";'A remplir'!B459;SI('A remplir'!D478="";'A remplir'!B478;SI('A remplir'!D497="";'A remplir'!B497;SI('A remplir'!D516="";'A remplir'!B516;SI('A remplir'!D535="";'A remplir'!B535;SI('A remplir'!D554="";'A remplir'!B554;SI('A remplir'!D573="";'A remplir'!B573;SI('A remplir'!D592="";'A remplir'!B592;SI('A remplir'!D611="";'A remplir'!B611;SI('A remplir'!D630="";'A remplir'!B630;SI('A remplir'!D649="";'A remplir'!B649;SI('A remplir'!D668="";'A remplir'!B668;SI('A remplir'!D687="";'A remplir'!B687;SI('A remplir'!D706="";'A remplir'!B706;SI('A remplir'!D725="";'A remplir'!B725;SI('A remplir'!D744="";'A remplir'!B744;SI('A remplir'!D763="";'A remplir'!B763;SI('A remplir'!D782="";'A remplir'!B782;SI('A remplir'!D801="";'A remplir'!B801;SI('A remplir'!D820="";'A remplir'!B820;SI('A remplir'!D839="";'A remplir'!B839;SI('A remplir'!D858="";'A remplir'!B858;SI('A remplir'!D877="";'A remplir'!B877;SI('A remplir'!D896="";'A remplir'!B896;SI('A remplir'!D915="";'A remplir'!B915;SI('A remplir'!D934="";'A remplir'!B934;SI('A remplir'!D953="";'A remplir'!B953;SI('A remplir'!D972="";'A remplir'!B972;SI('A remplir'!D991="";'A remplir'!B991;SI('A remplir'!D1010="";'A remplir'!B1010;SI('A remplir'!D1029="";'A remplir'!B1029;SI('A remplir'!D1048="";'A remplir'!B1048;SI('A remplir'!D1067="";'A remplir'!B1067;SI('A remplir'!D1086="";'A remplir'!B1086;SI('A remplir'!D1105="";'A remplir'!B1105;SI('A remplir'!D1124="";'A remplir'!B1124;SI('A remplir'!D1143="";'A remplir'!B1143;SI('A remplir'!D1162="";'A remplir'!B1162;SI('A remplir'!D1181="";'A remplir'!B1181;SI('A remplir'!D1200="";'A remplir'!B1200;SI('A remplir'!D1219="";'A remplir'!B1219;SI('A remplir'!D1238="";'A remplir'!B1238;SI('A remplir'!D1257="";'A remplir'!B1257;SI('A remplir'!D1276="";'A remplir'!B1276;SI('A remplir'!D1295="";'A remplir'!B1295;SI('A remplir'!D1314="";'A remplir'!B1314;SI('A remplir'!D1333="";'A remplir'!B1333;SI('A remplir'!D1352="";'A remplir'!B1352;SI('A remplir'!D1371="";'A remplir'!B1371;SI('A remplir'!D1390="";'A remplir'!B1390;SI('A remplir'!D1409="";'A remplir'!B1409;SI('A remplir'!D1428="";'A remplir'!B1428;SI('A remplir'!D1447="";'A remplir'!B1447;SI('A remplir'!D1466="";'A remplir'!B1466;SI('A remplir'!D1485="";'A remplir'!B1485;SI('A remplir'!D1504="";'A remplir'!B1504;SI('A remplir'!D1523="";'A remplir'!B1523;SI('A remplir'!D1542="";'A remplir'!B1542;SI('A remplir'!D1561="";'A remplir'!B1561;SI('A remplir'!D1580="";'A remplir'!B1580;SI('A remplir'!D1599="";'A remplir'!B1599;SI('A remplir'!D1618="";'A remplir'!B1618;SI('A remplir'!D1637="";'A remplir'!B1637;SI('A remplir'!D1656="";'A remplir'!B1656;SI('A remplir'!D1675="";'A remplir'!B1675;SI('A remplir'!D1694="";'A remplir'!B1694;SI('A remplir'!D1713="";'A remplir'!B1713;SI('A remplir'!D1732="";'A remplir'!B1732;SI('A remplir'!D1751="";'A remplir'!B1751;SI('A remplir'!D1770="";'A remplir'!B1770;SI('A remplir'!D1789="";'A remplir'!B1789;SI('A remplir'!D1808="";'A remplir'!B1808;SI('A remplir'!D1827="";'A remplir'!B1827;SI('A remplir'!D1846="";'A remplir'!B1846;SI('A remplir'!D1865="";'A remplir'!B1865;SI('A remplir'!D1884="";'A remplir'!B1884;'A remplir'!B1884+1))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));CAR(34);" spoken=";CAR(34);1;CAR(34);CAR(62))

S'il existe donc une formule qui peut repeter mon opération X fois j'ai toujours un décalage de 19 cases entre mes tableaux.

Merci de vos réponses et de votre aide, je suis sou excel 2007
 
Dernière édition:

Misange

XLDnaute Barbatruc
Re : probleme d'imbrication dans la formule

Bonjour

Si au lieu de nous dire ce qui ne fonctionne pas tu nous mettais un classeur exemple (avec le résultat attendu) et si tu nous expliquais ce que tu cherches à obtenir tu aurais plus de chances que quelqu'un se penche sur ton problème.
 

DragonBallZ1981

XLDnaute Nouveau
Re : probleme d'imbrication dans la formule

Bonjour,

Merci de votre réponse.

Voici mon fichier ->ICI<-

Mon souci est dans la case "C1909" de la page "Fichier Final 3"
Une fois ma formule fonctionnel, il doit y avoir <Page id="101" spoken="1">

Et le 101 vas changer au fur et a mesure de l'avancement de mes macro il vas devenir 100 puis 99 puis 98 etc... jusqu'a ce qu'il trouve a la page "A remplir" un tableau vide (dans mon cas actuel "64")

Merci de votre aide
 

Misange

XLDnaute Barbatruc
Re : probleme d'imbrication dans la formule

Re bonjour
alors là ça va pas le faire :(
rentrer dans un classeur de 1.5MO contenant X pages et formules et sans la moindre explication, je n'en n'ai pas le temps.Pas la moindre explication jointe, il faudrait tout un dimanche sinon plus pour essayer de comprendre la logique (...) de ton travail antérieur qui t'a surement demandé quelques heures.
Quand je vois une formule comme la tienne, mon premier réflexe c'est de me dire que l'approche par formule n'est surement pas la bonne et qu'il faut soit revoir la structure complète du classeur soit passer par macro.
Désolée de ne pas t'encourager davantage mais je vais profiter d'une éclaircie dehors...
 

CISCO

XLDnaute Barbatruc
Re : probleme d'imbrication dans la formule

Bonjour à tous, bonjour Misange

Comme dirait Misange...

Pour que nous soyons plus efficaces, tu ferais mieux de créer un fichier exemple avec juste 3 ou 4 onglets, et ta formule réduite à ce cas particulier.

En général, les intervenants sur ce forum veulent bien se tordre les méninges pour proposer de nouvelles méthodes, de nouvelles formules, de nouvelles macros, pas pour comprendre le travail déja fait.

On peut peut-être faire en matriciel, en 3D, avec de l'INDIRECT... mais cela serait tellement plus simple si tu nous expliquais davantage ton besoin.

Pour te donner un peu envie, cf le lien suivant :
https://www.excel-downloads.com/threads/excel-optimisation-dune-formule-complexe.184451/

Dans ce cas, la formule initiale faisait 47 lignes. La dernière, matricielle il est vrai, utilisée par boatitude, une ligne :
Code:
MIN(I33:INDIRECT("I"&LIGNE(I33)+$E$8)+(LIGNE(INDIRECT("1:"&$E$8+1))*$H$7);220)


@ plus
 
Dernière édition:

haonv

XLDnaute Occasionnel
Re : probleme d'imbrication dans la formule

Bonjour à tous,

J'avais commencé avec un fichier exemple,que je viens de légèrement modifier suite aux poste de Misange et de Cisco.
Ce ne doit pas être la panacée, mais ce sera peut-être un point de départ.

Amicalement
 

Pièces jointes

  • pour DragonBallZ1981.xlsm
    24.3 KB · Affichages: 99

DragonBallZ1981

XLDnaute Nouveau
Re : probleme d'imbrication dans la formule

Bonjour cisco et haonv.

Déjà merci pour votre aide.

@cisco
j'ai été voir l'autre sujet ou vous êtes passé de 47 lignes a une et franchement j'ai rien compris :(

@haonv
effectivement votre formule fonctionne sur le fichier simplifier, seul problème c'est que je peux pas la recopier, y a un souci avec les {} dès que je clique sur la cellule ils disparaissent et si j'essai de les remettre la formule fonctionne plus.

J'ai bien compris votre systeme, en faite vous additionné toute les cellule en partant de D3 jusqu'a la fin avec un décallage de 19 a chaque fois, puis vous ajouter 1. je vais essayer de me concentrer sur ca.

Merci beaucoup pour votre aide
 

Staple1600

XLDnaute Barbatruc
Re : probleme d'imbrication dans la formule

Bonjour


effectivement votre formule fonctionne sur le fichier simplifier, seul problème c'est que je peux pas la recopier, y a un souci avec les {} dès que je clique sur la cellule ils disparaissent et si j'essai de les remettre la formule fonctionne plus.

Il faut valider en matriciel: CTRL+SHIFT+ENTER

Il ne faut mettre les accolades manuellement.
 

DragonBallZ1981

XLDnaute Nouveau
Re : [RESOLU]probleme d'imbrication dans la formule

C'est vrais que j'ai pas pensé a demander a google alors qu'en étant modérateur sur un autre site je fait de même avec les membres. Honte à moi :D

En tout cas merci j'ai capté le truc

Bonne fin de journée a vous tous.
 

CISCO

XLDnaute Barbatruc
Re : probleme d'imbrication dans la formule

Bonjour

Bonjour cisco et haonv.

Déjà merci pour votre aide.

@cisco
j'ai été voir l'autre sujet ou vous êtes passé de 47 lignes a une et franchement j'ai rien compris :(

Ce n'est qu'un exemple, pas forcément applicable à ton cas.

Ceci dit, je crois que tu as compris la puissance des formules matricielles...

@ plus
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 218
Messages
2 086 363
Membres
103 197
dernier inscrit
sandrine.lacaussade@orang