Importer de SQL vers EXCEL puis vers MACRO

kolivier

XLDnaute Occasionnel
Bonjour le forum,

J'aurai, s'il vous plait, une petite question.

------
Une MACRO peut elle récupéer le contenu d'un fichier CSV créé par l'intermédiaire d'un page Internet Explorer?
------

J'ai une macro (logiciel.xls) qui dispose d'un bouton qui en cliquant dessus m'ouvre un autre fichier EXEL (source.xls) contenant plusieurs lignes d'informations, et m'affiche ces lignes dans une listebox du logiciel.xls.

Le fichier source.xls est un fichier vierge dans lequel je colle les informations que j'ai obtenu d'un fichier CSV (liste.CSV)

Ce fichier CSV se créé automatiquement en tapant une URL (transfert de ma base SQL en Fichier CSV)

Tout fonctionne trés bien.

Cependant, cela fait beaucoup de manip a chaque fois donc ma question est la suivante :

Existe t'il un script qui me permet a partir de ma macro excel d'ouvri une page IE avec une url qui créé mon fichier CSV et de réaliser une communication entre ce fihcier CSV créé et ma macro.

MACRO - > IE + URL -> fichier CSV -> envoie des lignes dans listbox de la Macro initiale

Ou encore une MACRO peut elle récupéer le contenu d'un fichier CSV créé par l'intermédiaire d'un page Internet Explorer?

Je vous prie dèjà de me pardonner pour la complexité de ma question.

Merci pour votre temps a me lire.
 

chris

XLDnaute Barbatruc
Re : Importer de SQL vers EXCEL puis vers MACRO

Bonjour
S'il suffit de se positionner sur l'URL pour que le fichier csv soit créé sur ton DD cela parait faisable. Le chemin est-il toujours le même ?
La commande FollowHyperlink doit pouvoir ouvrir l'URL : ensuite tu peux depuis Excel faire ce que tu veux du csv, la source du csv importe peu.
 

kolivier

XLDnaute Occasionnel
Re : Importer de SQL vers EXCEL puis vers MACRO

Bonsoir,

Merci pour les divers messages reçu ici et par MP, mais aprés 20 jours de test, je me reigne a vous déranger à nouveau car sans votre aide, je ne parviens pas a trouver de solution.

je vous propose la chose suivante, j'ai créé un fichier excel (joint) EXCEL.xls qui contient une macro simple avec deux champs NB et NOM. Ce fichier excel contient aussi les login et mot de passe d'une base de données uniquement créée pour l'exemple. En vous donnant accés avec les codes a cette base de donnée, peut etre pourriez vous mieux m'aider a trouver une solution a mon PB.

Je vous remercie trés sincérement, je souhaite evidemment comprendre comment faire et non pas vous laisser tout faire.

Bonne soirée
 
Dernière édition:

kolivier

XLDnaute Occasionnel
Re : Importer de SQL vers EXCEL puis vers MACRO

C'est un super début et je t'en remercie, car avec ça je devrais pouvoir comprendre plus rapidement et adapter a mon besoin.

Le seul hic est qu'il faut que je comprenne quelles sont les infos récupérées a partir de la page htm ou php car avec un autre exemple d'url le fichier xls plante, voir l'url mise dans le fichier.

Merci en tout cas, ça fait du bien de ne pas se sentir seul au monde
 
Dernière édition:

MJ13

XLDnaute Barbatruc
Re : Importer de SQL vers EXCEL puis vers MACRO

Re bonjour,

Tout cela dépend de la requête que tu fais. Tu peux ne sélectionner que certaines tables de données (si ce sont toujours les mêmes). Voir tout, puis il sufit de faire une macro pour ne récupérer que ce qui t'intéresse.
 

MJ13

XLDnaute Barbatruc
Re : Importer de SQL vers EXCEL puis vers MACRO

Re Bonjour

Attention chaque cas est unique!
Pour développer ton application tu dois d'abord faire du débogage (c'est pour cela qu'en général je met des stop un peu partout dans mon code).
Ensuite souvent si tu as une feuille URL, une feuille requête et une feuille Récupération des données, le mieux est lorsque tu as plusieurs URL à fusionner est de supprimer la requête entre 2 URL. Pour cela tu utilises l'enregistreur de macro (bouton rond sur la barre d'outils Visaul Basic), tu sélectionnes toute la feuille et tu tapes ctrl+-. Ensuite tu récupères le code que tu peux appeler SupRequete que tu pourras appeler dans ta macro général en tapant

sub lance_requete
ton code
SupRequete
ton code
end sub
 

kolivier

XLDnaute Occasionnel
Re : Importer de SQL vers EXCEL puis vers MACRO

Me revoila, j'ai modifié le script pour avoir quelque schoses de plus proche du but.

Mais j'ai un PB avec

Rem PB a ce niveau
With ActiveSheet.QueryTables.Add(Connection:="URL", _
Destination:=Range("A1"))

Je ne sais pas l'adapter a mon prog.

En clair, je n'ai plus besoin de copier les infos sur une page "données" et je n'ai plus besoin de mettre l'url sur une feuille, mais plutot de la mettre dans le code VBA, donc je conserve la page requete, et en cliquant j'ouvre une macro qui me permet de saisir un numéro, cela vient completer mon url (code) :
URL = "http://www.test-internet.com/fiche.php?nb=" & NB.Value
mais ensuite le programme plante car je ne sais pas interpréter la fonction :
With ActiveSheet.QueryTables.Add(Connection:="URL", _
Destination:=Range("A1"))

Merci vraiment bcp de ton aide, car je touche presque au but grace a toi .

je mets le code modifié en piece jointe
 
Dernière édition:

kolivier

XLDnaute Occasionnel
Re : Importer de SQL vers EXCEL puis vers MACRO

Me revoila, j'ai modifié le script pour avoir quelque schoses de plus proche du but.

Mais j'ai un PB avec

Rem PB a ce niveau
With ActiveSheet.QueryTables.Add(Connection:="URL", _
Destination:=Range("A1"))

Je ne sais pas l'adapter a mon prog.

En clair, je n'ai plus besoin de copier les infos sur une page "données" et je n'ai plus besoin de mettre l'url sur une feuille, mais plutot de la mettre dans le code VBA, donc je conserve la page requete, et en cliquant j'ouvre une macro qui me permet de saisir un numéro, cela vient completer mon url (code) :
URL = "http://www.test-internet.com/fiche.php?nb=" & NB.Value
mais ensuite le programme plante car je ne sais pas interpréter la fonction :
With ActiveSheet.QueryTables.Add(Connection:="URL", _
Destination:=Range("A1"))

Merci vraiment bcp de ton aide, car je touche presque au but grace a toi .

je mets le code modifié en piece jointe
 
Dernière édition:

Discussions similaires

Réponses
13
Affichages
430

Statistiques des forums

Discussions
312 841
Messages
2 092 709
Membres
105 517
dernier inscrit
Freddy93