Excel - vba - Excel web query

Résolu
Mr Deltoide Messages postés 3 Statut Membre -  
Mr Deltoide Messages postés 3 Statut Membre -
Bonjour à tous,

Je souhaite savoir s'il est possible de figer (donc choisir) le nom du fichier excel s'ouvrant (et se créant au passage) lors de l'exécution d'une Excel web query.

Et surtout s'il est possible d'effectuer ça à partir d'une macro.

P.S.: J'utilise la fonction shell pour exécuter le fichier à extension .iqy

Merci :)
A voir également:

4 réponses

eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 279
 
Bonjour,

Fais-le en enregistrement de macro, tu auras ce qu'il te faut dans le code généré.
eric
1
Mytå Messages postés 4246 Date d'inscription   Statut Contributeur Dernière intervention   954
 
Salut le Forum

En exemple une façon de procéder :
Sub Requete() 
'Création fichier 
Open "d:\requ.iqy" For Output As #1 

'Inscrire le texte de la requête 
Print #1, "WEB" & Chr(10) & "1" & Chr(10) & "https://www.boursorama.com/" 

'Fermeture du fichier 
Close #1 

'Insérer la requête dans la feuille active 
With ActiveSheet 
.QueryTables.Add("FINDER;d:\requ.iqy", .Range("A1")).Refresh 
End With 

'Supprimer le fichier 
Kill "d:\requ.iqy" 
End Sub


Merci de donner suite à votre question, nous ne sommes pas des robots...
« Si le déboguage est l'art d'enlever les bogues, alors la programmation doit être l'art de les créer. »
1
Mr Deltoide Messages postés 3 Statut Membre
 
Bonjours à tous,

Merci de vos réponses. Je vais essayer vos solutions respectives.
0
Mr Deltoide Messages postés 3 Statut Membre
 
Bonjours à tous,

Je ne peux pas modifier mon post, je repost.

eriiic:

J'ai effectué toutes les manipulations que je souhaite automatiser lors de l'execution de la macro, hélas, je ne retrouve que les opérations effectuées sur le classeur (base de l'enregistrement). Il n'empêche que j'ai trop tendance à oublier cet enregistreur. Merci du rappel.

Mytå:

J'ai trouvé solution à mon problème et même bien plus grace à la commande suivante:

.QueryTables.Add("FINDER;d:\requ.iqy", .Range("A1")).Refresh

Je ne maîtrise pas le nom du fichier ouvert lors de l'execution de la macro, mais j'importe directement les données voulues dans le fichier maitre, dans la feuille et même la cellule souhaitée.

C'est excellent.

Merci à vous deux pour votre aide.
0