XL 2016 Selection d'image dans un userform et envois dans une feuille

  • Initiateur de la discussion Initiateur de la discussion Myst
  • Date de début Date de début

Myst

XLDnaute Occasionnel
Bonjour
je voudrais solliciter votre aide afin de faire un petit fichier qui fonctionnera comme indiqué ci-dessous.
1 - j'ouvre "l'userform1" en cliquant sur le "CommandButton1"
2- je clique sur "l'image1" dans "l'userform1" pour sélectionner une image
3- l'image apparais dans "image1" et le nom de celle-ci s'inscrire dans le "Label1"
4- je clique sur "Valider" et l'image est envoyé dans le contrôle Actives X de la feuil1 et le contenu du Label dans la cellule A1
voila, si quelqu'un peu m'aider, par avance merci
 

Pièces jointes

Solution
Bonjour Myst,

Téléchargez les fichiers joints où vous voulez, de préférence dans le même dossier.

Le code de l'UserForm :
VB:
Dim fichier As Variant 'mémorise la variable

Private Sub CommandButton1_Click()
With Feuil1.Image1
    .Picture = LoadPicture(IIf(Label1 = "", "", fichier))
    .PictureSizeMode = fmPictureSizeModeStretch 'cadrage
    .Parent.[A12] = Label1
End With
End Sub

Private Sub Image1_Click()
Image1.Picture = LoadPicture("") 'RAZ
Label1 = "" 'RAZ
ChDir ThisWorkbook.Path
fichier = Application.GetOpenFilename 'choix
On Error Resume Next 'si une image n'est pas choisie
Image1.Picture = LoadPicture(fichier)
Image1.PictureSizeMode = fmPictureSizeModeStretch 'cadrage
If Err = 0 Then Label1 = Mid(fichier, InStrRev(fichier, "\")...

job75

XLDnaute Barbatruc
Bonjour Myst,

Téléchargez les fichiers joints où vous voulez, de préférence dans le même dossier.

Le code de l'UserForm :
VB:
Dim fichier As Variant 'mémorise la variable

Private Sub CommandButton1_Click()
With Feuil1.Image1
    .Picture = LoadPicture(IIf(Label1 = "", "", fichier))
    .PictureSizeMode = fmPictureSizeModeStretch 'cadrage
    .Parent.[A12] = Label1
End With
End Sub

Private Sub Image1_Click()
Image1.Picture = LoadPicture("") 'RAZ
Label1 = "" 'RAZ
ChDir ThisWorkbook.Path
fichier = Application.GetOpenFilename 'choix
On Error Resume Next 'si une image n'est pas choisie
Image1.Picture = LoadPicture(fichier)
Image1.PictureSizeMode = fmPictureSizeModeStretch 'cadrage
If Err = 0 Then Label1 = Mid(fichier, InStrRev(fichier, "\") + 1)
Me.Repaint
End Sub
A+
 

Pièces jointes

  • ESSAI (1).xlsm
    ESSAI (1).xlsm
    28.9 KB · Affichages: 13
  • th (1).jpg
    th (1).jpg
    8.1 KB · Affichages: 20
  • th (2).jpg
    th (2).jpg
    4.4 KB · Affichages: 18
  • th(3).jpg
    th(3).jpg
    13.3 KB · Affichages: 18

Discussions similaires

Réponses
2
Affichages
549

Statistiques des forums

Discussions
315 285
Messages
2 118 029
Membres
113 416
dernier inscrit
rr69