Importer des données web en boucle

keufy Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
keufy Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,
Je suis nouveau sur ce forum alors j'espère poster au bon endroit et être claire dans mes explications.

Mon besoin
- pour chaque objet présent en A:A de la feuille parametre
- créer un onglet par objet avec le nom de l'objet
- récupérer les données présentes sur une page html
- insérer les données importées dans l'onglet correspondant

Dans un premier temps j'ai fait une macro qui créée les onglets avec le nom des objets et ça fonctionne :
Sub ajout_feuilles()

Dim nom, serv

For Each serv In Range("A2:A500")
If serv <> "" Then
nom = serv.Value
Sheets.Add Count:=1, after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = nom
End If
Next serv

End Sub

Par contre, ma macro d'importation des données web tombe en erreur :
Sub recup_config()

Dim serv

For Each serv In Sheets("Parametre").Range("A2:A500")
Sheets(serv).Select
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://sxanoy14/RECUP_CONFIG/html/AIX/" & serv & ".html#pi_15", _
Destination:=Range(serv & "!$A$1"))
.Name = serv & ".html#pi_15"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
Next

End Sub

Erreur rencontrée sur "Sheets(serv).Select" : Erreur d'exécution 13 Incompatibilité de type

Sauriez-vous m'aider pour me sortir de ce faux pas ?
Merci par avance.
A voir également:

2 réponses

Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Bonjour,

Ton For Each ... est sur une plage de cellules et non sur les sheets !!!
"serv" est donc un Range et non un Sheets.

;0)
0
keufy Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour ce premier retour.

Par contre comment puis je faire pour qu'à chaque boucle, excel selectionne la feuille portant le même nom que l'objet (de la colonne A de paramètre) actif dans le For Each ?

En espérant ne pas trop être confus dans mes explications.
0