Changer l'image en fonction du contenu d'une cellule (liste déroulante)

Bonjour,

Dans l'onglet "COMMANDE", j'aimerais qu'une image apparaisse en A3 en fonction du contenu de la cellule F3. A terme, la cellule F3 sera une liste déroulante.

Par exemple, si en F3, il y a le texte "FUJI" sélectionné, l'image "FUJI" apparaît en A3 dans ce même onglet.

La version Microsoft Excel utilisée au sein de mon entreprise est celle de 2019. Je n'ai donc malheureusement pas la formule =IMAGE, ce qui aurait peut-être été plus simple. :)

A noter que ce fichier Excel est voué à être partagé donc j'ai besoin que les images soient stockées sur le fichier Excel (dans "FORMULES") et non pas dans un dossier.

Je suis passée par une MACRO VBA mais cette dernière ne fonctionne pas. J'ai l'erreur d'exécution 1004. Voici le code :

---

Sub ChangerImage()

Dim texte As String

Dim img As Shape

Dim imgExiste As Boolean



' Récupère le texte de la cellule F3

texte = ThisWorkbook.Sheets("COMMANDE").Range("F3").Value



' Vérifie si une image existe déjà et la supprime si nécessaire

imgExiste = False

For Each img In ThisWorkbook.Sheets("FORMULES").Shapes

If img.Type = msoPicture And img.Name = "ImageDynamique" Then

img.Delete

imgExiste = True

Exit For

End If

Next img



' Affiche l'image en fonction du texte

Select Case texte

Case "FUJI"

Set img = ThisWorkbook.Sheets("FORMULES").Shapes.AddPicture("FUJI", msoFalse, msoTrue, 0, 0, 100, 100)

Case "COULEURS"

Set img = ThisWorkbook.Sheets("FORMULES").Shapes.AddPicture("COULEURS", msoFalse, msoTrue, 0, 0, 100, 100)

' Ajoutez plus de cas si nécessaire

End Select



' Renomme l'image pour une utilisation future

If Not img Is Nothing Then

img.Name = "ImageDynamique"

End If

End Sub

---

Pourriez-vous s'il vous plaît m'aider à résoudre cette erreur ? J'ai joint le fichier Excel si jamais cela peut vous aider !

Un grand merci !

Solène

Bonjour

Peut-être juste avec une rechercheV comme sur fichier joint

Slts

Bonjour,

Merci beaucoup pour votre retour.

Je ne trouve pas votre RechercheV dans le fichier Excel, voici en PJ ce que je vois. J'ai la version Microsoft Excel 2019 donc je me demande si c'est pour cette raison.

Merci !

Solène

recherchev

Bonjour,

Non! rien à voir avec excel 2019 la rechercheV se situe dans, Formule, Gestionnaire de noms, Affichage

Si vous ne trouvé pas faite le moi savoir et essayerais de vous faire un procédé de mise en oeuvre

Slts

Bonjour,

Intéressant ! Je ne connaissais pas cette fonctionnalité.

Cependant, j'ai étudié votre fichier et les champs Gestionnaire de nom et je n'arrive toujours pas à comprendre comment la formule suivante récupère l'image dans FormulesA2 et FormuleA3.

=INDIRECT(RECHERCHEV(COMMANDE!$F$3;FORMULES!$B$2:$C$3;2;))

Merci d'avance pour votre explication,

Solène

Bonjour,

Je ne suis pas expert en explication

RECHERCHEV: Est une fonction qui recherche une valeur spécifiée (dans COMMANDE!$F$3) dans la première colonne d'une plage de données (FORMULES!$B$2:$C$3= colonne B). Une fois que la valeur est trouvée, la fonction renvoie une valeur de la même ligne dans une colonne spécifiée (dans ce cas, la deuxième colonne, indiquée par 2= colonne C ).

INDIRECT: Cette fonction renvoie la référence spécifiée. Dans ce cas, elle prend la valeur renvoyée par RECHERCHEV (par exemple, A1) et la convertit en une référence de cellule réelle. Par exemple, si la valeur retournée par RECHERCHEV est A1, alors INDIRECT(A1) renverra le contenu de la cellule A1.

En espérant avoir pu te répondre.

j'aimerais qu'une image apparaisse en A3 en fonction du contenu de la cellule F3. A terme, la cellule F3 sera une liste déroulante

Juste une question? as-tu pu te dépatouiller pour faire fonctionner ce système par rapport à ta demande

Slts

Bonsoir à tous,

Une variante...plus basique...

4matrice-sl.xlsm (235.81 Ko)

Cordialement,

Bonjour,

Merci à tous les deux pour vos retours.

Je maîtrise la fonction =RechercheV, cependant je n'arrive pas à utiliser de la même façon que vous la partie Gestionnaire de nom.

J'ai reproduis à l'identique vos formules dans mon fichier source mais ça ne marche pas. L'image n'apparaît pas. Pourriez-vous m'expliquer et me dire comment avec la recherche V vous arrivez à récupérer l'image en partant de la colonne B et non pas A (celle où se trouve l'image) ?

Slts,

Solène

Bonsoir Solène

Voir fichier joint avec quelques explications,

Me dire si c'est OK

Slts

Bonjour,

Un grand merci pour l'explication ! Je n'avais pas compris la partie 2 (image + =affichage dans formule) mais c'est désormais très clair, ça fonctionne !

C'est top, merci. :)

Solène

Rechercher des sujets similaires à "changer image fonction contenu liste deroulante"