Formule Excel: Nom de la table de référence dynamique -

Table des matières

Formule générique

=SUM(INDIRECT(table&"(column)"))

Sommaire

Pour créer une formule avec une référence dynamique à un nom de tableau Excel, vous pouvez utiliser la fonction INDIRECT avec concaténation si nécessaire. Dans l'exemple illustré, la formule en L5 est:

=SUM(INDIRECT(K5&"(Amount)"))

Ce qui renvoie la somme des montants pour trois tables nommées "Ouest", "Central" et "Est".

Explication

Cette formule se comporte comme ces formules plus simples:

=SUM(West(Amount)) =SUM(Central(Amount)) =SUM(East(Amount))

Toutefois, au lieu de coder en dur la table dans chaque formule SOMME, les noms de table sont répertoriés dans la colonne K et les formules de la colonne L utilisent la concaténation pour assembler une référence à chaque table. Cela permet d'utiliser la même formule dans L5: L7.

L'astuce est la fonction INDIRECT pour évaluer la référence. Nous commençons par:

=SUM(INDIRECT(K5&"(Amount)"))

qui devient:

=SUM(INDIRECT("West"&"(Amount)"))

puis:

=SUM(INDIRECT("West(Amount)"))

La fonction INDIRECT résout ensuite la chaîne de texte en une référence structurée appropriée:

=SUM(West(Amount))

Et la fonction SOMME renvoie le résultat final, 27 500 pour la région Ouest.

Remarque: INDIRECT est une fonction volatile et peut entraîner des problèmes de performances dans des classeurs plus volumineux et plus complexes.

Articles intéressants...