Gestion des images avec UserForm

brionfred

XLDnaute Nouveau
Bonjour à toutes et à tous, je suis nouveau venu sur ce forum et je tiens à féliciter l'ensemble des Webmaster et des contributeurs pour leur implication au sein de ce site, merci à vous.
Je suis débutant en VBA et depuis plusieurs jours je me heurte à un problème concernant les images et les UserForm, je souhaiterais inviter un utilisateur à sélectionner une images par un bouton dans un UserForm (les images se trouvent sur le disque dur), cette image/ou son nom de fichier, devra être stockée dans le classeur excel, par la suite à l'ouverture d'un autre UserForm cette image devra être chargé dans le contrôle image.
Est ce que cela est possible ?
J'ai réussi à inviter l'utilisateur à choisir une image et à transférer le chemin complet de l'image dans une cellule du classeur, je ne sais pas si la procédure est bonne ? Par contre je n'arrive pas à récupérer cette image dans un autre UserForm !
Merci de votre aide et bonne journée.:)
 

Pièces jointes

  • Modeles4.xlsm
    185.1 KB · Affichages: 129

brionfred

XLDnaute Nouveau
Re : Gestion des images avec UserForm

Bonjour Gilbert_RGI
Merci beaucoup de votre réponse rapide, en effet j'avais déjà trouvé beaucoup de réponses à mes questions sur le site proposé, mais je ne trouve pas les codes correspondant à la façon de récupérer l'image des noms de fichiers d'une cellules excel dans un Userform
Code:
Private Sub UserForm_initialize()
   
   répertoirePhoto = "C:\Users\PARIS\Documents\Perso\Sandrine\Bardusch" ' à adapter

LDetailNomClient = Range("MODELES!C" & Lig).Value
LDNumeroClient = Range("MODELES!B" & Lig).Value
LDetailNumModele = Range("MODELES!D" & Lig).Value
LDetailSpecificite = Range("MODELES!E" & Lig).Value
LDetailParticularite = Range("MODELES!F" & Lig).Value
LDetailCommentaire = Range("MODELES!G" & Lig).Value
LDDateSaisie = Format(Range("MODELES!H" & Lig).Value, "dd mmm yyyy")
LDDateModif = Format(Range("MODELES!I" & Lig).Value, "dd mmm yyyy")

MonImage = Range("MODELES!J" & Lig).Value
 If Dir(répertoirePhoto & "\" & NomImage & ".jpg") <> "" Then
         USFDetailModele.Image1.PictureSizeMode = fmPictureSizeModeStretch
         USFDetailModele.Image1.Picture = LoadPicture(répertoireImage & "\" & NomImage & ".jpg")
    End If
Run ("DetailModele")

Merci de votre compréhension, je suis novice et dans l'impasse
Cordialement
 

brionfred

XLDnaute Nouveau
Re : Gestion des images avec UserForm

Bonjour, merci pour vos remarques
Après un peu de recherche j'ai trouvé comment récupérer la photo correspondant à l'enregistrement sélectionné.
Je ne sais pas si c'est la bonne méthode mais ça marche

Code:
Private Sub UserForm_initialize()

répertoirePhoto = ThisWorkbook.Path & "\Photos clients\"   ' adapter
MonImage = Range("MODELES!J" & Lig).Value

LDetailNomClient = Range("MODELES!C" & Lig).Value
LDNumeroClient = Range("MODELES!B" & Lig).Value
LDetailNumModele = Range("MODELES!D" & Lig).Value
LDetailSpecificite = Range("MODELES!E" & Lig).Value
LDetailParticularite = Range("MODELES!F" & Lig).Value
LDetailCommentaire = Range("MODELES!G" & Lig).Value
LDDateSaisie = Format(Range("MODELES!H" & Lig).Value, "dd mmm yyyy")
LDDateModif = Format(Range("MODELES!I" & Lig).Value, "dd mmm yyyy")
Me.Image1.Picture = LoadPicture(répertoirePhoto & MonImage)
LChoixPhoto = Range("MODELES!J" & Lig).Text
 
Run ("DetailModele")
End Sub

La variable Lig a été déclaré dans un autre module.

Encore merci à vous
A bientôt pour d'autres questions, parce que je pense en avoir encore quelques une !!!
 

Discussions similaires

Statistiques des forums

Discussions
312 211
Messages
2 086 299
Membres
103 172
dernier inscrit
Aurelyan