XL 2016 insère des photo dans un User forme.

AlexandrB

XLDnaute Nouveau
Bonjour ,

J'ai des photos dans mon fichier Excel dans la feuille "photos" , je voudrai les inclure dans mon User Forme ( USF_Contrôle) dans le grand cadre a gauche ( voir photo) , et qu'elle change en fonction du point de contrôle .
Exemple point de contrôle 1 = photo 01 , point de contrôle 2 = photo 02 , j'avais une macro qui marcher mais impossible de remettre la main dessus.

1666873417031.png


Merci d'avance .
 

Pièces jointes

  • JTO-Gamme PVC.xlsm
    819.7 KB · Affichages: 6

Lolote83

XLDnaute Barbatruc
Bonjour à tous,
Voici ton fichier en retour ou j'ai rajouté un bouton et un ComboBox dans le formulaire
L'appui sur le bouton charge dans le ComboBox toutes les images contenues dans l'onglet photos
Le choix via le ComboBox du nom de l'image affiche l'image dans le formulaire
1667813912121.png

Le code est celui-ci
VB:
Private Sub CommandButton2_Click()
    Set f = Sheets("Photos")
    For Each s In f.Shapes
        If Left(s.Name, 7) = "Picture" Then
            Me.ComboBox1.AddItem s.Name
        End If
    Next
End Sub

Private Sub ComboBox1_Change()
      Set s = f.Shapes(CStr(Me.ComboBox1))
      s.CopyPicture xlScreen, xlBitmap
      With s.Parent.ChartObjects.Add(0, 0, s.Width, s.Height).Chart
        While .Shapes.Count = 0
          DoEvents
          .Paste
        Wend
        .Export "monimage.jpg", "Jpg"
        .Parent.Delete
      End With
      Me.Image1.PictureSizeMode = fmPictureSizeModeZoom
      Me.Image1.Picture = LoadPicture("monimage.jpg")
      Kill "monimage.jpg"
End Sub

Il te reste juste a adapter à ton besoin
@+ Lolote83
 

Pièces jointes

  • Copie de ALEXANDRB - JTO-Gamme PVC.xlsm
    829.2 KB · Affichages: 10

AlexandrB

XLDnaute Nouveau
merci
Bonjour à tous,
Voici ton fichier en retour ou j'ai rajouté un bouton et un ComboBox dans le formulaire
L'appui sur le bouton charge dans le ComboBox toutes les images contenues dans l'onglet photos
Le choix via le ComboBox du nom de l'image affiche l'image dans le formulaire
Regarde la pièce jointe 1154593
Le code est celui-ci
VB:
Private Sub CommandButton2_Click()
    Set f = Sheets("Photos")
    For Each s In f.Shapes
        If Left(s.Name, 7) = "Picture" Then
            Me.ComboBox1.AddItem s.Name
        End If
    Next
End Sub

Private Sub ComboBox1_Change()
      Set s = f.Shapes(CStr(Me.ComboBox1))
      s.CopyPicture xlScreen, xlBitmap
      With s.Parent.ChartObjects.Add(0, 0, s.Width, s.Height).Chart
        While .Shapes.Count = 0
          DoEvents
          .Paste
        Wend
        .Export "monimage.jpg", "Jpg"
        .Parent.Delete
      End With
      Me.Image1.PictureSizeMode = fmPictureSizeModeZoom
      Me.Image1.Picture = LoadPicture("monimage.jpg")
      Kill "monimage.jpg"
End Sub

Il te reste juste a adapter à ton besoin
@+ Lolote83
Merci
 

Discussions similaires

Statistiques des forums

Discussions
311 720
Messages
2 081 889
Membres
101 831
dernier inscrit
gillec