Monsieur Excel
Pour tout savoir faire sur Excel !

09 juillet 2011

Un nom élastique pour une liste ?

Dans mon article du 1er juillet, « Définition d’un nom élastique », j’expliquais qu’un nom élastique pouvait servir – entre autres – à créer une liste de validation dynamique.

Avant d’aller plus loin dans cet article, je vous propose de lire – éventuellement – l’article en question, mais – surtout ne les loupez pas ! – de lire les trois premiers commentaires qui en ont été inspirés.

En suivant les instructions de cduigou, j’ai créé deux tableaux Excel 2007 pour engendrer ensuite une liste de validation pour les pays et une autre pour les départements.

Certes, cela fonctionne bien, les deux listes sont effectivement élastiques, et ce sans la formule dont j’avais besoin pour définir le nom élastique.

Mais le prix à payer pour cette « simplicité » est cher ! Les tableaux d’Excel 2007 ont ceci de détestable qu’ils reviennent grosso modo à fusionner les cellules qui les composent et que votre tableau préféré perd alors sa qualité fondamentale et essentielle, l’indépendance des cellules.

Vous le voyez dans l’image ci-dessous : si l’on sélectionne les lignes 4 et 5 pour insérer deux lignes au-dessus de la ligne 4, on constate que l’insertion n’est plus possible !

Si les tableaux avaient été l’un au-dessus de l’autre, ce problème n’existerait pas… Cela est dû au fait que, s’il y a au moins deux tableaux partageant des lignes, on ne peut plus insérer de ligne dans la partie « commune ». De même, on ne peut plus insérer de colonne là ou au moins deux tableaux Excel 2007 ont des colonnes en commun. Les tableaux Excel 2007 sont à proscrire !

Remarque – Les spécialistes des « bases de données » vous diront que cela est utile pour garantir l'intégrité des données. Cela, je veux bien le comprendre, mais pourquoi alors n'avoir mis dans Excel 2007 que les tableaux pour remplacer le format automatique d'Excel 2003 ?

Pour terminer, je vous conseille de lire aussi l’article « Convertir en plage, en VBA 2007 » du 26 octobre 2009.

3 Commentaire(s):

  • Pas du tout d'accord avec vous sur le "prix à payer". Je ne vois pas en quoi l'indépendance des cellules est en soi une "qualité fondamentale et essentielle". Dans ce cas vous devez être un farouche adversaire des tableaux croisés dynamiques, où, comme chacun sait, les cellules sont aussi peu indépendantes que possible !
    Les "tableaux" (ou "listes") dont nous parlons constituent en général des tables de références, qui n'ont d'autre intérêt que de fournir des services à d'autres parties du classeur Excel (Validation, RECHERCHEV, ...).
    Dans mon esprit, ils ne participent pas à l'exploitation courante du classeur. On ne voit donc pas très bien à quoi correspondrait le "besoin" d'insertion de lignes ou de colonnes au niveau de la feuille Excel, l'insertion de cellules marchant, quant à elle, très bien.
    Les utilisateurs sont d'ailleurs très satisfaits de cette technique qui leur évite le fastidieux (et impératif) Insertion/Nom/Définir qui était obligatoire jusqu'à Excel 2002.

    By Anonymous cduigou, sur 6:21 PM  

  • Outre le fait que j'ai rencontré par le passé des problèmes avec des formules qui ne "suivaient" pas les réaménagements du tableau,le problème rédhibitoire (pour moi) est l'impossibilité de partager le classeur.

    By Anonymous Aigle34, sur 7:10 PM  

  • L'insertion de ligne est possible en sélectionnant les cellules et en utilisant la commande Insérer - Ligne de tableau en haut.On voit bien que chaque tableau est indépendant.

    By Anonymous jpr73, sur 11:49 AM  

Enregistrer un commentaire

<< Accueil