Afficher une image dans une cellule et imgbox [Résolu]

hartarus - 4 juil. 2014 à 10:53 - Dernière réponse :  hartarus
- 4 juil. 2014 à 15:32
Bonjour,
Je souhaiterai à l'aide d'une dialogbox afficher une image en meme temps dans une imagebox(picturebox) d'un userform et en meme temps dans une cellule d'une feuille excel.

j'arrive à l'afficher dans la feuille excel mais pas dans la picturebox, il me manque donc la procédure pour l'afficher dans la picturebox pouvez vous m'aider ?

voici mon code:
Sub BoutPath_Click()

    With Application.FileDialog(msoFileDialogFilePicker)
        .AllowMultiSelect = False
        .ButtonName = "Submit"
        .Title = "Select an image file"
        .Filters.Clear
        .Filters.Add "JPG", "*.JPG"
        .Filters.Add "JPEG File Interchange Format", "*.JPEG"
        .Filters.Add "Graphics Interchange Format", "*.GIF"
        .Filters.Add "Portable Network Graphics", "*.PNG"
        .Filters.Add "Tag Image File Format", "*.TIFF"
        .Filters.Add "All Pictures", "*.*"

        If .Show = -1 Then
            Dim img As Object
            Dim img2 As Picture
            Set img = ActiveSheet.Pictures.Insert(.SelectedItems(1))
        
        
            
            'Scale image size
            'img.ShapeRange.ScaleWidth 0.75, msoFalse, msoScaleFromTopLeft
            'img.ShapeRange.ScaleHeight 0.75, msoFalse, msoScaleFromTopLeft

            'Position Image
            img.Left = 40
            img.Top = 65

            'Set image sizes in points (72 point per inch)
            img.Width = 180
            img.Height = 220
            
            


        Else
            MsgBox ("Cancelled.")
        End If


Edit : Ajout des balises de code...
Afficher la suite 

5 réponses

Répondre au sujet
jordane45 20561 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 20 avril 2018 Dernière intervention - 4 juil. 2014 à 11:46
0
Utile
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Commenter la réponse de jordane45
jordane45 20561 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 20 avril 2018 Dernière intervention - 4 juil. 2014 à 11:57
0
Utile
1
Bonjour,


Dim pathImg As String
    pathImg = "c:\tmp\faq-logo.jpg"
     If Dir(pathImg) <> "" Then
      UserForm1.Image1.Picture = LoadPicture(pathImg)
     End If






N'hésites pas à consulter ce site :
http://silkyroad.developpez.com/VBA/ControlesUserForm/#LII-K

.
Merci beaucoup pour la réponse super-rapide, seulement je prends l'image à partir d'une diagbox donc je n'ai pas de chemin de fichier specifique, existe t'il un moyen de placer une image depuis une diagbox dans une cellule d'un classeur et de l'afficher dans la picturebox ?

exemple :

je cherche une image sur mon disque local, je désire qu'elle vienne s'afficher en même temps sur une cellule de mon classeur marqué "carte" dans la cellule b5 afin de la sauvegarder et dans "image1" de mon userform1 pour l'affichage

a savoir que l'opération peut se renouveler avec une autre image et remplacer la précédente.

merci encore pour les réponses
x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
Commenter la réponse de jordane45
cs_Le Pivert 5065 Messages postés jeudi 13 septembre 2007Date d'inscriptionContributeurStatut 13 avril 2018 Dernière intervention - 4 juil. 2014 à 15:10
0
Utile
1
Bonjour,

 Dim fDialog As Office.FileDialog
   Dim varFile As Variant
Set fDialog = Application.FileDialog(msoFileDialogFilePicker)
 With fDialog
        .AllowMultiSelect = False
        .ButtonName = "Submit"
        .Title = "Select an image file"
        .Filters.Clear
        .Filters.Add "JPG", "*.JPG"
        .Filters.Add "JPEG File Interchange Format", "*.JPEG"
        .Filters.Add "Graphics Interchange Format", "*.GIF"
        .Filters.Add "Portable Network Graphics", "*.PNG"
        .Filters.Add "Tag Image File Format", "*.TIFF"
        .Filters.Add "All Pictures", "*.*"

      If .Show = True Then
    varFile = .SelectedItems(1)
 UserForm1.Image1.Picture = LoadPicture(varFile)
 UserForm1.Image1.PictureSizeMode = fmPictureSizeModeZoom
  Dim img As Object
            Dim img2 As Picture
            Set img = ActiveSheet.Pictures.Insert(.SelectedItems(1))
           
           'Scale image size
            'img.ShapeRange.ScaleWidth 0.75, msoFalse, msoScaleFromTopLeft
             'img.ShapeRange.ScaleHeight 0.75, msoFalse, msoScaleFromTopLeft

            'Position Image
            img.Left = 40
            img.Top = 65

            'Set image sizes in points (72 point per inch)
            img.Width = 180
            img.Height = 220
            Else
         MsgBox "You clicked Cancel in the file dialog box."
      End If
   End With

EXTRAORDINAIRE !!!


Merci infiniment !
Commenter la réponse de cs_Le Pivert

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.