Afiichage photo à partir du répertoire classeur

vins911

XLDnaute Nouveau
Bonjour à tous,

Je vous expose mon petit soucis, j'ai un classeur avec 2 feuilles.
La première ("CHOIX CONFIGURATION") est une fiche qui me sert à définir une configuration de produits selon plusieurs critères (cases à cocher). Selon les critères définis, j'obtiens un code par concatétanation sur la feuille 2 ("MATRICE") en L3.

J'aimerai afficher en B35 sur la feuille 1, la photo se trouvant dans le même répertoire que le classeur et portant comme nom "valeur L3 feuil2".JPG.

Peut-on m'expliquer svp, j'ai jamais fait de l'insertion de photo automatique à partir d'un code. Je ne sais pas si je dois forcément passer en VBA ou alorsy'a-t-il plus simple (peut-être quelque chose du genre à accompagner d'autre chose : Feuil1!B35=afficheimage(Feuil2!L3&".jpg").

Par avance merci de votre aide.
Vincent
 

Pièces jointes

  • Fiche Actionneur + distributeur.xlsm
    84.5 KB · Affichages: 59

vins911

XLDnaute Nouveau
Re : Afiichage photo à partir du répertoire classeur

>Je ne vois pas dans ton code où il faudrait que je change quelque chose pour qu'il aille chercher les photos à la racine du dossier où est le classeur?

Si les images sont dans le répertoire c:\mesdoc\

En B2: =afficheImage(A2&".jpg";"c:\mesdoc\")


JB

Non je veux justement qu'il aille les chercher à la racine du dossier où est enregistré le classeur mais ton code va me les chercher apparement dans mes docs
 

Dranreb

XLDnaute Barbatruc
Re : Afiichage photo à partir du répertoire classeur

Ce n'est pas bon: il n'y a aucun contrôle image dans votre feuille.
Par contre il y a autre chose qui n'a absolument rien à voir: c'est quoi ce Shape qui n'a rien à faire ici et qui s'appelle "Image1" ? Il vient d'où ? d'une barre d'outils dessin ? d'une barre d'outils Formulaire ? d'une insertion d'image ? En tout cas certainement pas de la boite à outils contrôles !
À +
 

vins911

XLDnaute Nouveau
Re : Afiichage photo à partir du répertoire classeur

Ce n'est pas bon: il n'y a aucun contrôle image dans votre feuille.
Par contre il y a autre chose qui n'a absolument rien à voir: c'est quoi ce Shape qui n'a rien à faire ici et qui s'appelle "Image1" ? Il vient d'où ? d'une barre d'outils dessin ? d'une barre d'outils Formulaire ? d'une insertion d'image ? En tout cas certainement pas de la boite à outils contrôles !
À +

OUPS... Sorry !!!
C'est un contrôle ActiveX Image.

Comment insérer un contrôle image? Qu'est-ce que c'est? Car dans ce cas, je ne connais pas...

Merci de ton aide
 

Dranreb

XLDnaute Barbatruc
Re : Afiichage photo à partir du répertoire classeur

Malheureusement je n'ai pas votre version d'Excel. Ce ne serait pas à partir d'un truc qui s'appelle développeur ou quelque chose comme ça ? Après tout, si c'est plus simple avec l'ancien système…

J'ai peut être une autre voie pour le créer: il a accepté de m'enregistrer la création d'un tel objet dans une nouvelle macro.
L'instruction engendrée est celle ci:
VB:
   ActiveSheet.OLEObjects.Add(ClassType:="Forms.Image.1", Link:=False, _
        DisplayAsIcon:=False, Left:=470.294117647059, Top:=323.823529411765, _
        Width:=366.176470588235, Height:=196.764705882353).Select
Il n'y aurait plus qu'à l'exécuter.
À +
 
Dernière édition:

vins911

XLDnaute Nouveau
Re : Afiichage photo à partir du répertoire classeur

Ok et à partir de là comment j'insère la photo qui porte comme nom la valeur en L3 de la Feuille 2 (MATRICE)?

Je ne peux pas direct insérer l'image sur la feuille dans une cellule pour faciliter l'impression de la feuille config.
 

Dranreb

XLDnaute Barbatruc
Re : Afiichage photo à partir du répertoire classeur

En cliquant dessus.
Attention: La feuille "MATRICE" de votre dernier ficher joint est l'objet Worksheet Feuil3, or il y a toujours écrit Feuil2 dans le LoadPicture.

P.S. On peut peut être étoffer un peu la procédure :
VB:
Private Sub Image1_Click()
Dim RéfFic As String
On Error Resume Next
RéfFic = ThisWorkbook.Path & "\" & Feuil3.[L3].Value & ".jpg"
If Err Then MsgBox "Instruction incorrecte ==> Err. " & Err & ":" & vbLf & Err.Description, _
   vbCritical, "Clic sur image": Exit Sub
Me.Image1.Picture = LoadPicture(RéfFic)
If Err Then
   If Err = 53 Then
      MsgBox "Fichier """ & RéfFic & """ introuvable.", _
         vbCritical, "Clic sur image"
   Else
      MsgBox "Err. " & Err & ":" & vbLf & Err.Description _
         & vbLf & "en tentant de charger le fichier """ & RéfFic & """.", _
         vbCritical, "Clic sur image"
         End If
   End If
End Sub
À +
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 670
Messages
2 090 742
Membres
104 644
dernier inscrit
MOLOKO67