Monsieur Excel
Pour tout savoir faire sur Excel !

21 juillet 2011

Utiliser les noms dans les formules

Prenons l’exemple d’un petit modèle de calcul de profit en fonction du prix de vente représenté par le tableau suivant :

Vous pourrez analyser ce modèle dans la partie haute de l’image suivante, qui montre les formules utilisées. Vous pouvez vous dire que la formule de B13 est bien compliquée. Il y a une raison à cela. Si l’on avait choisi des formules plus simples, il y aurait une formule simple en B13 et une autre, simple aussi, en C13 que l’on aurait ensuite recopiée à droite.

L’avantage de notre formule plus compliquée en B13 est qu’il suffit de recopier tout le bloc B12:B18 vers la droite pour obtenir les quatre colonnes suivantes.

Nous allons maintenant transformer ce modèle courant en modèle sensiblement amélioré.

Définition des noms

La première étape consiste à donner des noms explicites aux différents éléments du modèle. Pour cela, sélectionnons le bloc A2:B9 et en maintenant la touche [Ctrl] enfoncée le bloc B13:F17, puis utilisons la commande « Créer à partir de la sélection ». Nous constatons avec plaisir que seule « Colonne de gauche » est cochée ; c’est parfait, validons par « OK ».

Il suffit de dérouler le menu « Nom », à gauche de la barre de formule pour constater que tout s’est très bien passé : les cellules B3 à B9 sont nommées à partir du contenu de la colonne A dans la même ligne et les blocs horizontaux de B13:F17 sont aussi nommés à partir du contenu de la colonne A.

Affectation des noms

La seconde étape est simple : utilisez la commande « Définir un nom … Appliquer les noms » et validez sans rien toucher…

Et le miracle, comme vous pouvez le constater dans la seconde image ci-dessous : les formules antérieures, peu conviviales car constituées uniquement d’adresses de cellules, ont été remplacées par des formules totalement explicites, utilisant des noms réellement descriptifs !

3 Commentaire(s):

  • Bonjour,

    Je profite de ce post pour demander s'il y a une solution pour mettre en 'base de données' des formules.

    Exemple: la formule de calcul des impôts français changent régulièrement. Je souhaite gérer cette formule dans un tableau à part afin de faciliter la maintenance du reste du fichier.
    L'idée, c'est qu'en fonction du revenu, une formule aille cherche dans ce tableau 'base de données' la formule connue pour le calcul de l'impôt sur le revenu pour cette tranche de revenue.

    J'espère que j'ai pu bien expliquer mon idée et que ça puisse vous donner de l'inspiration pour un article futur. Merci.

    By Anonymous Anonyme, sur 5:00 PM  

  • Pour être plus explicite, il s'agit d'exécuter du texte comme une fonction.

    Il semble que ce qui bloque, c'est l'absence de la fonction EVAL() qui n'est plus disponible. Il y a bien une ruse en passant par la 'Gestion des noms'. Mais je dois utiliser cet appel sur une cinquantaine de cellules. ça me semble laborieux de créer 50 noms de fonction.

    J'ai lu aussi que l'on peut en VBA mais autant que possible, j'essaye d'éviter le VBA dans ce fichier.

    Respectueusement.

    By Anonymous Anonyme, sur 1:55 PM  

  • Mailez-moi un classeur avec un exemple de ce que vous voulez : thiriez@hec.fr

    By Blogger Hervé Thiriez, sur 10:04 AM  

Enregistrer un commentaire

<< Accueil