La liste déroulante « interactive »
Dans
le monde Excel, il est rare qu’une innovation réelle voie le jour.
Cela
a été le cas il y a deux ans avec le concept de survol de la souris découvert
par Jordan Goldmeier. Vous en aurez tous les détails avec les trois
articles suivants :
« Une macro sensible au passage de la souris » du 23 juillet 2012
« Une macro sensible au passage de la souris » du 23 juillet 2012
« Un splendide usage du survol de souris ! » du 28 juillet 2012
« Un survol de souris vraiment bluffant ! » du 19 octobre 2013.
Je
suis tombé il y a deux mois sur une autre invention originale, même si sa
portée est moins grande, la notion de
« liste déroulante interactive ». Nous prendrons comme départ la liste de 100
acteurs utilisée dans l’article précédent, mais avec cette fois-ci le prénom de
l’acteur avant son nom, la liste originale étant quand même triée en fonction
du nom.
L’idée
totalement innovante que nous allons mettre en œuvre aujourd’hui consiste à
créer une liste déroulante interactive : on tape une séquence de
caractères en B2, puis on déroule le menu : la liste déroulante est alors
limitée à tous les acteurs dont le prénom-nom contient la séquence en
question .
Les
deux copies d’écran encadrées de bleu montrent ce que devient la liste
déroulante quand on entre préalablement en B2 les séquences « oo »
ou « ba ».
Pour
obtenir ce résultat, nous avons défini le menu déroulant via une validation par
liste avec la formule =acteurs. Ce nom est lui-même défini par =decaler('Liste dér.'!$E$2;;;max('Liste
dér.'!$D:$D)).
Bien
entendu, si l’on fait cela, on ne pourra plus taper une séquence en B2. La clef
est donc, lors de la création de la validation par liste, de passer par l’onglet
« Alerte d’erreur » et de décocher « Quand des données non valides sont tapées » !
En
D2, recopiée vers le bas, nous avons la formule =D1+SI(estnum(cherche($B$2;A2));1;0) .
Et,
en E2, copiée vers le bas, la formule =sierreur(index(A:A;equiv(ligne()-1;D:D;0));"").
Par
rapport à la solution présentée dans notre dernier article, cette solution est
bien entendu plus lourde car elle requiert deux colonnes supplémentaires. Mais
le temps qu’elle peut vous gagner lors de la recherche dans de grandes listes
déroulantes est sans mesure !
Remarque – Il y a une autre
différence. Dans l’article précédent, on se cadrait sur le début du nom de
l’acteur. Ici, on cherche simplement une séquence de caractères placée
n’importe où dans le prénom-nom.
L’article
original est dû à RajExcel :
Video Tutorial : Create a searchable drop down list in Excel 2013
Si
vous consultez la vidéo, vous verrez que ma solution est une amélioration de
celle proposée par Raj. Ceci dit, je lui tire mon chapeau pour cette
innovation qui – à mon sens – est d’un grand intérêt pratique.
4 Commentaire(s):
Il est dommage que vous ne mettiez pas les liens dans vos articles lorsque vous citez un précédent article.
Il est certes toujours possible de passer par les archives, qui ne sont elles-mêmes pas disponibles depuis l'article, mais ce n'est pas franchement user-friendly...
cdt,
Thibault
By Anonyme, sur 8:46 PM
J'aime beaucoup votre site !!!! Le peu d'MVP en France reconnu internationalement ( à pat Laurent Longre) m'a conduit à m'inscrire sur des sites d'MVP américains (Bill Jelen, Mike Excelisfun Girvin et John Walkenbach). Il semble que l'expertise d'Excel ne soit pas très développé en France même s'il y a de très bon sites comme celui de Jacques Boisgontier et comme le votre. Ca fait du bien de retrouver des articles de qualité en Français.
Juste pour vous dire merci pour le travail que vous accomplissez.
By Stéphane Ntonga, sur 11:01 PM
@ Anonyme-Thibault
Il est très rapide de retrouver un article dont on connaît la date à l'aide du bandeau droit du blog. Je ne vois pas la nécessité de vous donner en plus un lien direct.
La rédaction de ce blog, non rémunérée, me prend un temps fou. Je trouve regrettable que vous me fassiez un tel reproche, dans le seul but de vous économiser quelques secondes.
Vous auriez au moins pu apprécier d'apprendre grâce à mon blog cette astuce géniale.
J'aurais bien mieux apprécié un commentaire comme celui de Stefyu qui, lui, sait apprécier tout ce travail !
By Hervé Thiriez, sur 6:57 PM
@ Stefyu
Merci pour votre commentaire !
C'est grâce à des gens comme vous - qui savent apprécier le contenu du blog et qui ne se cachent pas derrière l'anonymat - que je trouve le courage de continuer ce blog.
By Hervé Thiriez, sur 6:59 PM
Enregistrer un commentaire
<< Accueil