Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 16/07/2011, 14h28   #1
Membre éclairé
 
Avatar de hisy
 
Inscription : novembre 2004
Messages : 373
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 373
Points : 300
Points : 300
Par défaut Copier une image web dans un repertoire local

Bonjour aux geeks qui bossent le week end ( en esperant avoir une réponse avant lundi )

Je souhaite faire une petit base Access avec les produits de mon fournisseur et je voudrais copier en local les images dont j'ai les URLs dans un csv.

Je peux les afficher dans un formulaire en pointant sur leur URL mais cela implique d'avoir Internet et moi j'ai besoin de les rappatrier en local.

J'ai fait une petite recherche avec Telnet mais il semble que ce ne soit pas possible ...

Merci pour vos pistes ou réponses.
__________________
Take it HiSy
hisy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2011, 15h22   #2
Membre Expert
 
Homme Jacques Petiot
Indépendant développeur et formateur
Inscription : octobre 2007
Messages : 891
Détails du profil
Informations personnelles :
Nom : Homme Jacques Petiot
Âge : 51
Localisation : France

Informations professionnelles :
Activité : Indépendant développeur et formateur
Secteur : Conseil

Informations forums :
Inscription : octobre 2007
Messages : 891
Points : 1 333
Points : 1 333
Hello
qu'est ce qui t'empêche d'enregistrer en local les images au moment où tu es connecté
et puis de les inclure en pièces jointes par exemple
__________________
-------------------Simplifi----------comme si tout était simple--------
Simplifi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2011, 15h27   #3
Membre éclairé
 
Avatar de hisy
 
Inscription : novembre 2004
Messages : 373
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 373
Points : 300
Points : 300
Ben ce qui m'en empêche c'est que je sais pas le faire justement ..

Je ne sais pas comment enregistrer en local les fichiers ...

J'ai un champ avec un série d'URLs et je sais pas rappatrier ces images sur mon poste .


__________________
Take it HiSy
hisy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2011, 15h38   #4
Membre Expert
 
Homme Jacques Petiot
Indépendant développeur et formateur
Inscription : octobre 2007
Messages : 891
Détails du profil
Informations personnelles :
Nom : Homme Jacques Petiot
Âge : 51
Localisation : France

Informations professionnelles :
Activité : Indépendant développeur et formateur
Secteur : Conseil

Informations forums :
Inscription : octobre 2007
Messages : 891
Points : 1 333
Points : 1 333
Hello
je comprends pas:
est ce qu'en cliquant sur une URl, tu peux l'afficher?
est ce que la copiant dans un navigateur tu peux l'afficher?
si oui, une fois l'image affichée, un clic droit puis enregistrer l'image et c'est gagné

mais bon, c'est un mode très manuel, et si tu en as des tonnes, je comprend que tu veuille automatiser
et là, malheureusement je ne sais pas tout faire.... peut être shellexecute
__________________
-------------------Simplifi----------comme si tout était simple--------
Simplifi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2011, 15h46   #5
Membre éclairé
 
Avatar de hisy
 
Inscription : novembre 2004
Messages : 373
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 373
Points : 300
Points : 300
Oui j'en ai plus de 3000 ...

__________________
Take it HiSy
hisy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2011, 16h40   #6
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonjour,

Voici une fonction qui utilise WinHTTP (il faut cocher la référence VB «Microsoft WinHTTP Services, version x.x») :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
' -------------------------------------------------------------------
' Fonction DownloadHttpFile
'
' Arguments :
' [E] strUrl            Adresse web fichier à télécharger
' [E] strFichierLocal   Fichier local
'
' Valeur renvoyée : Statut (Entier long) http
' -------------------------------------------------------------------
Function DownloadHttpFile(strUrl As String, _
                 strFichierLocal As String) As Long
Dim wq As WinHttp.WinHttpRequest
Dim lgStatus As Long, strStatusText As String
Dim ff As Integer, byArray() As Byte
 
' Nouvelle requête HTTP
Set wq = New WinHttpRequest
wq.Open "GET", strUrl
' Exécution requête HTTP
wq.Send
' Code et texte de retour de la requête http
lgStatus = wq.Status
strStatusText = wq.StatusText
' Si OK sauvegarder dans fichier local
If wq.Status = 200 Then
   ff = FreeFile()
   byArray() = wq.ResponseBody
   If Len(Dir(strFichierLocal)) > 0 Then Kill strFichierLocal
   ' Ecrire dans fichier
   Open strFichierLocal For Binary As ff
   Put #ff, , byArray()
   Close #ff
   Set wq = Nothing
End If
' Retourne Statut de la requête HTTP
DownloadHttpFile = lgStatus
End Function
Exemple d'utilisation :
Code :
1
2
3
4
5
6
7
8
Dim lgStatus As Long
Dim strUrl As String
Dim strFile As String
 
strUrl = "http://www.developpez.net/forums/avatars/48389-hisy.gif"
strFile = "C:\TestImage.gif"
lgStatus = DownloadHttpFile(strUrl, strFile)
MsgBox lgStatus, , "Code retour HTML"
Le statut 200 signifie que la requête HTTP s'est bien déroulé.
Ça n'est peut-être pas le seul, je le les connais pas tous.

A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 17/07/2011, 10h09   #7
Membre Expert
 
Homme Jacques Petiot
Indépendant développeur et formateur
Inscription : octobre 2007
Messages : 891
Détails du profil
Informations personnelles :
Nom : Homme Jacques Petiot
Âge : 51
Localisation : France

Informations professionnelles :
Activité : Indépendant développeur et formateur
Secteur : Conseil

Informations forums :
Inscription : octobre 2007
Messages : 891
Points : 1 333
Points : 1 333
Merci LedZeppII, je viens d'apprendre quelque chose
__________________
-------------------Simplifi----------comme si tout était simple--------
Simplifi est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h13.


 
 
 
 
Partenaires

Hébergement Web