Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

télécharger du contenu web et le mettre dans des feuilles excel

I

ipnet

Guest
Bonjour à tous,

Je viens de découvrir ce site, qui est très complet et intéressant. A travers les messages et shareware/freeware, je m'aperçois qu'il y a bcp de monde
passionnés, vraiment calés, et partageurs! Continuez! ;op))

Mon petit problème consiste à importer le contenu d'une page web, plusieurs fois et à en stocker l'info dans une feuille excel!

par exemple :
sur un site www.site.fr/numéro=X&jour=Y
je voudrais récupérer le contenu de tous les pages du jour Y avec numéro
allant de 0 à 100 (par incrément de 10)! chaque contenu du jour Y sera copié dans la même feuille excel!

pour le jour Y+1, une nouvelle feuille excel est mise en place, et je copie son contenu avec numéro = 0 à 100 (à nouveau) et ainsi de suite.

Je suis nul en macro excel! Qq'un pourrait-il m'aider ou me dire si ce type de macro existe déjà!

Merci par avance,

IPNET
 
M

Moa

Guest
Salut et soit le bienvenu.

Moi aussi, je suis nul en macro, donc j'utilise l'enregistreur de macro, c'est un bon moyen, puis tu modifies, quelques trucs, comme par exemple, les mouvements des scrolls bars, que tu pourra supprimer.

Donc tu vas dans le menu "outils", tu sélectionnes "macro" puis "nouvelle macro", tu donne un nom à ta macro, puis tu la lances.

Tu fais ensuite toutes les manips habituelles, quand tu as fini tes manips, tu stoppes ta macro.

Voilà, c'est fini.

Maintenant, pour apprendre, tu retourne dans le menu "outils" puis "macro" puis modifier, et là tu vois ton code.

Tu as une deuxième solution, quand il s'agit d'importer, tu vas dans le menu
"données", puis "donnéesExternes", puis "nouvelleRequêteSurLeWeb".

Voilà quelques bases simples.

@ +


Moa
 
M

Mytå

Guest
Salut ipnet, Moa et les excelliens(iennes)

Un debut de macro qui pourait surement te donner une idée

Sub req()
Sheets(2).Select
Cells.Select
Selection.Clear
Selection.Delete Shift:=xlUp
Range("A1").Select
Open "c:\requ.iqy" For Output As #1 'crée fichier texte
'inscrit le texte de la requête
Print #1, "WEB" & Chr(10) & "1" & Chr(10) & "http://diffusion.loto-quebec.com/sw3/res/asp/hr_6.asp"
Close #1 'ferme le fichier texte
'insére la requête dans la page 2
Sheets(2).QueryTables.Add("FINDER;C:\requ.iqy", Sheets(2).Range("A1")).Refresh
Kill "c:\requ.iqy" 'supprime le fichier texte
Sheets(2).Select
End Sub

Sub find()
Sheets(2).Select
Range("A1:B1").Select
Cells.find(What:="date", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False).Activate
End Sub

La sub req() load la page web sur ta feuille 2
et avec la sub find tu peut chercher une valeur specifique
reste ensuite a programmer le transfert des donnes sur tes feuilles

Esperant t'avoir été d'une certaine utilité

Amitié Mytå º¿º
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…