Image dans userform excel
Fermé
Johann
-
6 sept. 2015 à 14:09
cs_Le Pivert Messages postés 7883 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 18 mars 2023 - 6 sept. 2015 à 19:34
cs_Le Pivert Messages postés 7883 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 18 mars 2023 - 6 sept. 2015 à 19:34
A voir également:
- Afficher une image dans un userform vba
- Ce programme est écrit en python. il construit un mot secret dans une variable mais il ne l'affiche pas. modifiez-le pour qu'il affiche le mot secret. exécutez-le. quel est ce mot secret ? ✓ - Forum Python
- Frédéric cherche à faire le buzz sur les réseaux sociaux. il a ajouté une image de manchots sur une image de plage. retrouvez l'image originale de la plage. que cachent les manchots ? ✓ - Forum Windows
- Recherche par image - Guide
- Erreur 1004 vba ✓ - Forum VB / VBA
- Image iso - Guide
3 réponses
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
724
6 sept. 2015 à 17:48
6 sept. 2015 à 17:48
Bonjour,
Dans un UserForm mettre un commandbutton et un contrôle Image avec ce code
Dans un UserForm mettre un commandbutton et un contrôle Image avec ce code
Option Explicit
Private Sub CommandButton1_Click()
insertion
ExtractionImagesFeuille
Image1.Picture = LoadPicture(ThisWorkbook.Path & "\monimage.gif")
End Sub
Sub insertion()
Dim URL, Img
URL = "http://finviz.com/chart.ashx?t=A&ty=c&ta=1&p=d&s=l"
Set Img = ActiveSheet.Pictures.Insert(URL)
Img.Left = [B2].Left
Img.Top = [B2].Top
Img.Name = "monimage"
End Sub
Sub ExtractionImagesFeuille()
Dim Pict As Picture
Dim Nb As Byte
Application.ScreenUpdating = False
For Each Pict In Worksheets("Feuil1").Pictures
Pict.CopyPicture 'copie l'image
With Worksheets("Feuil1").ChartObjects.Add(0, 0, Pict.Width, Pict.Height).Chart
.Paste 'colle l'image dans un graphique temporaire
'Sauvegarde au format image, dans le même répertoire que ce classeur.
.Export ThisWorkbook.Path & "\" & Pict.Name & ".gif", "GIF"
End With
'Supprime le graphique
Nb = Worksheets("Feuil1").ChartObjects.Count
Worksheets("Feuil1").ChartObjects(Nb).Delete
Next Pict
Application.ScreenUpdating = True
End Sub
Bonjour cs_Le Pivert.
Bonjour cs_Le Pivert,
Merci de votre réponse.
Par contre, cela ne fonctionne pas chez moi.
Il y a bien un objet qui s'insert, mais pas une image.
Enfin un cadre avec une croix rouge en haut à gauche avec le texte "Impossible d'afficher l'image".
De plus, les images que je souhaite insérer sont en jpeg.
Merci à vous.
Johann
Bonjour cs_Le Pivert,
Merci de votre réponse.
Par contre, cela ne fonctionne pas chez moi.
Il y a bien un objet qui s'insert, mais pas une image.
Enfin un cadre avec une croix rouge en haut à gauche avec le texte "Impossible d'afficher l'image".
De plus, les images que je souhaite insérer sont en jpeg.
Merci à vous.
Johann
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
724
6 sept. 2015 à 19:30
6 sept. 2015 à 19:30
Essaie cela, ça fonctionne chez moi:
Cela prend un certain temps. Quand l'image s'affiche sur la feuille, il faut cliquer sur la feuille pour faire réapparaitre l'userForm
Option Explicit
Private Sub CommandButton1_Click()
insertion
ExtractionImagesFeuille
Image1.Picture = LoadPicture(ThisWorkbook.Path & "\monimage.gif")
End Sub
Sub insertion()
Dim URL, Img
URL = "http://www2.csdm.qc.ca/Gadbois/Eleves/nomverbe/contenu/images/ouvrirporte.jpg"
'essai avec cette adresse
Set Img = ActiveSheet.Pictures.Insert(URL)
Img.Left = [B2].Left
Img.Top = [B2].Top
Img.Name = "monimage"
End Sub
Sub ExtractionImagesFeuille()
Dim Pict As Picture
Dim Nb As Byte
Application.ScreenUpdating = False
For Each Pict In Worksheets("Feuil1").Pictures
Pict.CopyPicture 'copie l'image
With Worksheets("Feuil1").ChartObjects.Add(0, 0, Pict.Width, Pict.Height).Chart
.Paste 'colle l'image dans un graphique temporaire
'Sauvegarde au format image, dans le même répertoire que ce classeur.
.Export ThisWorkbook.Path & "\" & Pict.Name & ".jpg", "JPG"
End With
'Supprime le graphique
Nb = Worksheets("Feuil1").ChartObjects.Count
Worksheets("Feuil1").ChartObjects(Nb).Delete
Next Pict
Application.ScreenUpdating = True
End Sub
Cela prend un certain temps. Quand l'image s'affiche sur la feuille, il faut cliquer sur la feuille pour faire réapparaitre l'userForm
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
724
6 sept. 2015 à 19:34
6 sept. 2015 à 19:34
Correction:
il faut cliquer sur l'icone Excel dans la barre de tâche pour faire réapparaitre l'userForm
Option Explicit
Private Sub CommandButton1_Click()
insertion
ExtractionImagesFeuille
Image1.Picture = LoadPicture(ThisWorkbook.Path & "\monimage.jpg")
End Sub
Sub insertion()
Dim URL, Img
URL = "http://www2.csdm.qc.ca/Gadbois/Eleves/nomverbe/contenu/images/ouvrirporte.jpg"
Set Img = ActiveSheet.Pictures.Insert(URL)
Img.Left = [B2].Left
Img.Top = [B2].Top
Img.Name = "monimage"
End Sub
Sub ExtractionImagesFeuille()
Dim Pict As Picture
Dim Nb As Byte
Application.ScreenUpdating = False
For Each Pict In Worksheets("Feuil1").Pictures
Pict.CopyPicture 'copie l'image
With Worksheets("Feuil1").ChartObjects.Add(0, 0, Pict.Width, Pict.Height).Chart
.Paste 'colle l'image dans un graphique temporaire
'Sauvegarde au format image, dans le même répertoire que ce classeur.
.Export ThisWorkbook.Path & "\" & Pict.Name & ".jpg", "JPG"
End With
'Supprime le graphique
Nb = Worksheets("Feuil1").ChartObjects.Count
Worksheets("Feuil1").ChartObjects(Nb).Delete
Next Pict
Application.ScreenUpdating = True
End Sub
il faut cliquer sur l'icone Excel dans la barre de tâche pour faire réapparaitre l'userForm