Afficher une image externe dans un UserForm

Bonjour

Je vais essayer d'être explicite :

J'ai dans un fichier Excel 2 feuilles nommées (2017 et Les livres) dans la feuille "2017" j'ai un bouton permettant de rechercher un livre en entrant son numéro, une fois entré le numéro un premier UserForm1 apparait affichant le n° du livre, son nom ainsi que le genre.

Dans cet UserForm il y un bouton "Couverture" et en cliquant dessus un deuxième UserForm apparait et d'ou ma question :

Comment faire pour afficher une image représentant la couverture du livre au format JPG ?

Tous les fichiers portent le nom Couverture suivi du numéro entré via le bouton.

Voilà le code permettant d'associer le nom "Couverture" avec celui de son numéro et suivi de l'extension ".JPG". Ceci fonctionne correctement.

Do
Reponse = Application.InputBox("Quel est le numéro recherché ?", "Recherche du territoire", "Entrez une valeur numérique seulement")
If Reponse = False Then Exit Sub
If IsNumeric(Reponse) Then Reponse = Val(Reponse): Exit Do
            MsgBox "Veuillez entrer une valeur numérique s.v.p., merci"
Loop While Reponse <> IsNumeric(Reponse)

Couverture = "Couverture" + CStr(Reponse) + ".JPG" 'Nom de la couverture

Mais là ou je bloque c'est lorsque je veux télécharger la couverture.

Est-ce possible en VBA ? Merci.

Dans le fichier joint je n'ai pu mettre qu'une couverture au format JPG, si je veux en mettre plusieurs le site refuse d'ajouter le fichier, peut-être à cause de la taille.

J'oubliais, il faudrait prévoir si la couverture n'existe pas.

71les-livres.zip (125.98 Ko)

Bonsoir,

Ci-joint une proposition à tester.

Quelques précisions :

  • toutes les couvertures sont stockées dans un répertoire "Couverture", répertoire à placer à côté du fichier .xlsm
  • nom des couvertures : Couverture[n°].jpg (exemple : "Couverture1.jpg")
  • lors du clic sur le bouton "Couverture" du 1er userform, on passe en paramètre le n° au second userform (forme contenant l'image)
  • l'image correspondante est intégrée au composant image via la procédure "LoadPicture" (procédure VBA native)

Bonne soirée

Bouben

198les-livres-0-1.zip (116.82 Ko)

Bonjour

Je te remercie pour ton travail, ça fonctionne très bien sur PC, mais pas sur MAC avec Excel 2011, loadPicture n'est pas reconnue.

Si quelqu'un a un MAC ? Et s'il a une solution, je suis preneur. Par avance merci.

Rechercher des sujets similaires à "afficher image externe userform"