Bonjour,
Je souhaiterais savoir comment récupérer en VBA une image WEB afin de la sauvegarder comme un fichier jpg ou autre.
Bonjour,
Je souhaiterais savoir comment récupérer en VBA une image WEB afin de la sauvegarder comme un fichier jpg ou autre.
ben si tu as l'adresse de l'image ... voir URlDownload...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Private Declare Function URLDownloadToFile Lib "urlmon" Alias _ "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, _ ByVal szFileName As String, ByVal dwReserved As Long, _ ByVal lpfnCB As Long) As Long Private Sub Form_Load() URLDownloadToFile 0, "http://www.developpez.net/forums/image.php?u=54261&dateline=1166042577", "c:\monImage.gif" , 0, 0 End Sub
Bonjour,
La fonction marche, pas de problème !
Maintenant, si je voulais afficher l'image dans un contrpole Image ?
Actuellement, ça marche mais comment faire pour ne pas sauvegarder l'image sur disque, simplement l'afficher dans le contrôle image ?
Voici mon code actuel (qui fonctionne)
' en cliquant une fois sur le bouton de commande
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Option Explicit Dim FLIP As Boolean Private Declare Function URLDownloadToFile Lib "urlmon" Alias _ "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, _ ByVal szFileName As String, ByVal dwReserved As Long, _ ByVal lpfnCB As Long) As Long Private Sub CommandButton1_Click() If FLIP Then URLDownloadToFile 0, "http://data.moviecovers.com/DATA/zipcache/SOS TITANIC.jpg", "c:\monImage.jpg", 0, 0 Image1.Picture = LoadPicture("c:\monImage.jpg") Else Image1.Picture = LoadPicture("") End If FLIP = Not FLIP End Sub
' l'image s'affiche, en cliquant une deuxième fois, elle disparaîr, etc...
' Je souhairerais ne pas être obligé de sauvegarder l'image
pourquoi ne pas utiliser un contrôle webbrowser :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Private Sub CommandButton1_Click() WebBrowser1.Navigate "http://data.moviecovers.com/DATA/zipcache/SOS TITANIC.jpg" End Sub
Merci, j'ai essayé, ça marche, mais l'image est coupée, alors que dans un contrôle image, je peux choisit le mode d'affichage pour que l'image apparaissent en entier (propriété PictureSizeMode)
Bonjour, je ne comprends pas la réponse !!!
bonjour
il est aussi possible d'adapter l'image à la taille du WebBrowser.
Par exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Private Sub UserForm_Initialize() Dim S As String Dim Hauteur As Long, Largeur As Long Largeur = WebBrowser1.Width * 96 / 72 Hauteur = WebBrowser1.Height * 96 / 72 S = "http://www.developpez.net/forums/images/logo16.gif" WebBrowser1.Navigate _ "ABOUT:<HTML><CENTER><HEAD><body scroll='no' LEFTMARGIN=0 TOPMARGIN=0><IMG WIDTH=" & _ Largeur & " HEIGHT=" & Hauteur & _ " SRC='" & S & "'</IMG></BODY></CENTER></HTML>" End Sub
michel
Bonjour,
merci beaucoup, c'est OK !
Une autre question, peut-on aussi ajuster le contenu pour une URL ?
Par exemple pour celle-ci :
http://www.mappy.fr/
et que tout le contenu tienne dans un webbrowser ayant des dimensions prédéfinis ? En fait on verrait tout, mais en plus petit !
Jacques
Bonjour,
J'arrive à faire fonctionner la fonction URLDownloadToFile.
Je voudrais réaliser une mise en page d'un doc Word et dans le même principe je voudrais récupérer une image d'internet pour la coller directement dans un doc Word.
Merci d'avance d'avance de votre aide.
Ben
Up...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager