J’ai une formule dans laquelle j’utilise un tableau: Tableau3[nom de colonne]. J’ai aussi une formule qui calcule le nom de la colonne à sélectionner.
Je souhaite donc utiliser le résultat de la formule et passer le nom de la colonne dynamiquement au tableau (de type : Tableau3[formule qui choisit le nom de la colonne]).
si en I2 tu récupères le nom de la colonne avec le 1 et qu’avec ce résultat tu veut que le nom de cette colonne change avec ce que I2 te retourne, c’est comme le serpent qui se mords la queue puisque une fois le nom changer dynamiquement le résultat en I2 changera et la colonne devrais être renommée et I2 retournerai a nouveau un nom qui serait changé…etc. si c’était possible ça tournerai en boucle !
Le nom des colonnes du tableau ne change pas. La seule chose qui change c’est le résultat en I2, que j’aimerais actualiser dans Tableau1[XXXXXX].
Si en I2, on obtient Colonne 1, alors on affiche Tableau1[Colonne 1]
Si en I2, on obtient Colonne 2, alors on affiche Tableau1[Colonne 2]
Si en I2, on obtient Colonne 3, alors on affiche Tableau1[Colonne 3]
Si en I2, on obtient Colonne 4, alors on affiche Tableau1[Colonne 4]
Je veux éviter une boucle SI autant que possible pour que ce soit le plus efficace possible.
Ce que je cherche vraiment, c’est la syntaxe pour écrire Tableau1[« Résultat dans une celulle »]
@taz067 ce que tu proposes ci-dessus est pour avoir un champ personnalisé mais je cherche bien à afficher le résultat du tableau (et non pas juste une syntaxe personnalisé).
Du coup, je me suis appuyé sur la fonction INDIRECT: =INDIRECT(A1&"["&A2&"]"). On peut ensuite changer A1 et A2 par des formules ou une chaîne de caractères.
où A1 = "Tableau3"
et A2 = RJ45"&RECHERCHEV($D$12;Parameters!$I$2:$M$7;2;FAUX)+RECHERCHEV($G$12;Parameters!$I$2:$M$7;2;FAUX)+SI($D$14="Yes";RECHERCHEV($E$14;Parameters!$I$2:$M$7;2;FAUX);0)&"SFP"&RECHERCHEV($D$12;Parameters!$I$2:$M$7;3;FAUX)+RECHERCHEV($G$12;Parameters!$I$2:$M$7;3;FAUX)+SI($D$14="Yes";RECHERCHEV($E$14;Parameters!$I$2:$M$7;3;FAUX);0)