Afficher les images dynamiques selon la valeur d'une cellule
Bonjour à tous,
Je n'y connais rien en VBA mais j'imagine que ma demande sera plus facile à traiter qu'avec des formules. Voilà mon problème :
J'ai une liste déroulante de produits chimiques pour lesquels je dois afficher les pictogrammes de dangers correspondants (inflammable, corrosif, etc.).
Sauf que la liste étant très longue, je n'ai ni le temps ni l'énergie de le faire à la main, et le faire avec les formules c'est long et assez compliqué.
J'ai donc créer dans une feuille à part un tableau de source avec la liste des produits chimiques et la ou les mention de dangers correspondant dans la colonne à côté (inflammable, corrosif, etc.) et dans une 2e feuille j'ai mis les images correspondant aux mentions de dangers.
Ma demande est : est-ce possible de faire afficher les images correspondants aux dangers lorsque je viens sélectionner un produit chimique dans ma liste déroulante ? Si oui, auriez-vous une solution ?
Je vous ai mis un fichier Excel pour exemple afin que vous puissiez mieux comprendre et modifier à votre convenance (les données sont aléatoires, ne vous étonnez pas des pictogrammes de dangers).
Dans l'attente de vos retours.
Merci !
Bonjour,
Un exemple avec RechercheX.
Cdlt.
Bonsoir Jean-Eric,
C'est exactement ce que je voulais merci ! Je ne connaissais pas du tout cette méthode !
Peux-tu me dire précisément ce que tu as modifié ? Je vois que tu as touché aux images dans la 3e feuille (sachant que j'aurai plus de pictogrammes dans la source données).
Pour résumer, peux-tu me donner les étapes que tu as suivi stp ?
Je te remercie d'avance.
Hello, j'ai été confronté au même problème.
J'ai une solution qui ne marche pas du tout avec des images mais bien avec des pictos...
Elle est un peu longue à mettre en place, mais une fois que c'est fait, c'est réutilisable et très rapide à utiliser.
Dans mon cas il s'agissait de noms d'associations et il fallait que j'affiche le logo correspondant.
Le principal problème est que c'est monochrome et perd toutes les couleurs.
L'idée est (vu que j'avais la majorité des logos en vectoriel) de créer une police de caractère avec FontForge.
Je vois que tes pictos viennent de Wikipedia où ils sont trouvables en SVG, donc en vectoriel.
J'ouvre ce SVG dans InkScape :
Dans ce cas, on peut voir en bas de l'écran qu'il y a un "groupe" de 3 objets.
Cela vient du fait que le picto a un fond blanc qu'il faut supprimer. Pour dégrouper, faire MAJ-CTRL-G.
On sélectionne ensuite le fond blanc et on le supprime...
On définit donc une taille arbitraire (200mm de largeur c'est très bien) en haut de l'écran, en faisant attention à ce que le cadenas soit activé :
On sélectionne tout (CTRL-A) et on copie en mémoire.
Dans FontForge, je créé une nouvelle police et ouvre la lettre "A" où je fais un simple "coller" :
et ainsi de suite pour tous les pictos... Attention, au fur et à mesure de la réalisation des pictos, je vois que le gars qui les a faits en a eu marre et même si visuellement les mêmes, ils n'ont pas la même taille, sont réalisés avec différentes techniques prenant moins de temps mais "moins propres". Il a donc fallu utiliser de manière un peu plus pointue inkscape... (Mais c'est un très bon logiciel à découvrir)
Une fois fait, je nomme ma police (menu "Element" - "Infos police") :
et je la génère. Il est possible de générer des polices dans de nombreux formats. Pour windows il faut choisir "True Type" qui génèrera un fichier .TTF :
Une fois, je l'installe en double cliquant sur le fichier TTF :
Je relance Excel et cette police est accessible.
Du coup :
devient :
Une fois le tableau complété, je donne un nom à chaquelle colonne : "SGH" pour la liste des SGH et "Pictos" pour la liste des pictos :
De là je modifie la feuille "Mention de danger" :
La lettre donnée correspond donc à la lettre utilisée dans la police "picto".
Je créé une colonne qui joint toutes les lettres avec un espace.
Pour la facilité, je nomme mes colonnes :
Et dans la feuille "Liste déroulante", je ne fais appel qu'à une seule colonne qui affiche tous les pictos :
Demande moi en MP le lien pour tous les fichiers car je ne peux pas le partager ici.Hello :)
Oui, j'utilisais cette méthode avec Google Sheets et Office 365.
Vu la demande VBA, je n'ai pas pensé à 365, je ne savais pas que c'était maintenant compatible.
Mais le problème des images est que ça prend de la place et que ça ne fonctionne qu'avec 365 :(
