Bonjour, j'ai préparé une formule pour excel (j'ai pour cela utilisé xdata et une liste de lettres de l'alphabet sinon ça m'aurait pris des heures… pour un usage précis et récurrent.
Voici la formule en question (un peu raccourcie néanmoins, c'est pour montrer le principe, considérez que ça continue comme ça de façon «*logique*»).
Les cracks en excel auront probablement deviné mes intentions en lisant cet extrait de code.
Je vais tout de même tenter de le résumer :
je fais un tableau (ce tableau sera ensuite un outil qui servira de nombreuses fois, avec des données toujours différentes)
En B1 je saisis mon séparateur
De C1 à BZ1 je mets des noms, tous différents, que je changerai à chaque utilisation de l'outil (notez qu'il est tout à fait possible que je n'aille pas jusqu'à BZ1, dans certains cas, je n'aurais peut-être que C1 à H1 utilisés, par exemple)
La formule sera placée en B2 puis copiée-glissée sur la colonne 2 jusqu'à Bnn en fonction de mes besoins.
Ensuite, je tape des x (ou autre chose, mais les X je trouve ça parlant) dans les cellules B2 à BZnn selon ce que je souhaite voir apparaître dans la cellule comportant la formule.
Problème, ma formule complète mesure actuellement 3306 caractères, je n'ai droit qu'à 1024 (je viens de le découvrir).
Alors la question est simple : est-il possible de simplifier cette formule pour réduire son nombre de caractères ?
Ou vais-je absolument devoir passer par des cellules de sous-formule (Genre CA2 rassemble de C2 à V2, CB2 rassemble de W2 à AK2, etc. et ensuite ma formule B2 rassemble CA2+CB2+CC2… ?)
Voici la formule en question (un peu raccourcie néanmoins, c'est pour montrer le principe, considérez que ça continue comme ça de façon «*logique*»).
Bloc de code:
=CONCATENER(SI(ESTVIDE($C2);"";CONCATENER($C$1;$B$1));
SI(ESTVIDE($D2);"";CONCATENER($D$1;$B$1));
SI(ESTVIDE($E2);"";CONCATENER($E$1;$B$1));
SI(ESTVIDE($F2);"";CONCATENER($F$1;$B$1));
SI(ESTVIDE($G2);"";CONCATENER($G$1;$B$1));
SI(ESTVIDE($H2);"";CONCATENER($H$1;$B$1));
[…]
SI(ESTVIDE($BY2);"";CONCATENER($BY$1;$B$1));
SI(ESTVIDE($BZ2);"";CONCATENER($BZ$1;$B$1)))
Les cracks en excel auront probablement deviné mes intentions en lisant cet extrait de code.
Je vais tout de même tenter de le résumer :
je fais un tableau (ce tableau sera ensuite un outil qui servira de nombreuses fois, avec des données toujours différentes)
En B1 je saisis mon séparateur
De C1 à BZ1 je mets des noms, tous différents, que je changerai à chaque utilisation de l'outil (notez qu'il est tout à fait possible que je n'aille pas jusqu'à BZ1, dans certains cas, je n'aurais peut-être que C1 à H1 utilisés, par exemple)
La formule sera placée en B2 puis copiée-glissée sur la colonne 2 jusqu'à Bnn en fonction de mes besoins.
Ensuite, je tape des x (ou autre chose, mais les X je trouve ça parlant) dans les cellules B2 à BZnn selon ce que je souhaite voir apparaître dans la cellule comportant la formule.
Problème, ma formule complète mesure actuellement 3306 caractères, je n'ai droit qu'à 1024 (je viens de le découvrir).
Alors la question est simple : est-il possible de simplifier cette formule pour réduire son nombre de caractères ?
Ou vais-je absolument devoir passer par des cellules de sous-formule (Genre CA2 rassemble de C2 à V2, CB2 rassemble de W2 à AK2, etc. et ensuite ma formule B2 rassemble CA2+CB2+CC2… ?)