Simplification requête web

Le
Péhemme
Bonjour à tous,

J'ai, à l'aide du VBE écrit cette macro qui n'est que l'enchaînement de 2
requêtes sur un site web.
Ceci fonctionne parfaitement bien, cependant, par mesure d'esthétisme et,
peut-être de rapidité, peut-on n'effectuer qu'une seule requête tout en
obtenant les "2 informations" demandées ?
Si oui, pouvez-vous me mettre sur la voie ?
Merci d'avance de votre aide.

Sub aa_NouvelEssai()
Dim Sh, Dest1, Dest2
Set Sh = Sheets("ImportDonnées")
Set Dest1 = Range("ImportDonnées!A1")
Set Dest2 = Range("ImportDonnées!A6")

Application.ScreenUpdating = False

With Sh.QueryTables.Add(Connection:= _
"URL;http://www.lfp.fr/ligue1/classement.asp", Destination:Þst1)
'Range("A1"))
.Name = "classement"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlOverwriteCells 'xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "9" '==> informations récupérée
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse
End With
With Sh.QueryTables.Add(Connection:= _
"URL;http://www.lfp.fr/ligue1/classement.asp",
Destination:Þst2) 'Range("A6"))
.Name = "classement"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlOverwriteCells 'xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "11" '==> informations récupérée
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse
End With

Application.ScreenUpdating = False
End Sub

Bonne journée
Michel
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Misange
Le #16540391
bonjour

ben vu que tes requêtes sont différentes et que tu copies le résultat
dans des cellules différentes, je vois pas bien ce que tu voudrais
(pourrais) faire d'autre...


Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net

Péhemme a écrit :
Bonjour à tous,

J'ai, à l'aide du VBE écrit cette macro qui n'est que l'enchaînement de
2 requêtes sur un site web.
Ceci fonctionne parfaitement bien, cependant, par mesure d'esthétisme
et, peut-être de rapidité, peut-on n'effectuer qu'une seule requête tout
en obtenant les "2 informations" demandées ?
Si oui, pouvez-vous me mettre sur la voie ?
Merci d'avance de votre aide.

Sub aa_NouvelEssai()
Dim Sh, Dest1, Dest2
Set Sh = Sheets("ImportDonnées")
Set Dest1 = Range("ImportDonnées!A1")
Set Dest2 = Range("ImportDonnées!A6")

Application.ScreenUpdating = False

With Sh.QueryTables.Add(Connection:= _
"URL;http://www.lfp.fr/ligue1/classement.asp",
Destination:Þst1) 'Range("A1"))
.Name = "classement"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlOverwriteCells 'xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "9" '==> informations récupérée
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse
End With
With Sh.QueryTables.Add(Connection:= _
"URL;http://www.lfp.fr/ligue1/classement.asp",
Destination:Þst2) 'Range("A6"))
.Name = "classement"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlOverwriteCells 'xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "11" '==> informations récupérée
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse
End With

Application.ScreenUpdating = False
End Sub

Bonne journée
Michel



Péhemme
Le #16540371
Bon, eh bien tant pis.
Comme c'est la même page du site qui est "ouverte" et la même feuille Excel
qui sert de destination, je pensais qu'il y avait mieux à faire, même si je
ne suis parvenu à rien après avoir trituré ces lignes de code .
Merci de t'être penchée sur ma question.
Bonne soirée
Michel

"Misange" news:%23BFKQSW$
bonjour

ben vu que tes requêtes sont différentes et que tu copies le résultat dans
des cellules différentes, je vois pas bien ce que tu voudrais (pourrais)
faire d'autre...


Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net

Péhemme a écrit :
Bonjour à tous,

J'ai, à l'aide du VBE écrit cette macro qui n'est que l'enchaînement de 2
requêtes sur un site web.
Ceci fonctionne parfaitement bien, cependant, par mesure d'esthétisme et,
peut-être de rapidité, peut-on n'effectuer qu'une seule requête tout en
obtenant les "2 informations" demandées ?
Si oui, pouvez-vous me mettre sur la voie ?
Merci d'avance de votre aide.

Sub aa_NouvelEssai()
Dim Sh, Dest1, Dest2
Set Sh = Sheets("ImportDonnées")
Set Dest1 = Range("ImportDonnées!A1")
Set Dest2 = Range("ImportDonnées!A6")

Application.ScreenUpdating = False

With Sh.QueryTables.Add(Connection:= _
"URL;http://www.lfp.fr/ligue1/classement.asp", Destination:Þst1)
'Range("A1"))
.Name = "classement"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlOverwriteCells 'xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "9" '==> informations récupérée
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse
End With
With Sh.QueryTables.Add(Connection:= _
"URL;http://www.lfp.fr/ligue1/classement.asp",
Destination:Þst2) 'Range("A6"))
.Name = "classement"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlOverwriteCells 'xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "11" '==> informations récupérée
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse
End With

Application.ScreenUpdating = False
End Sub

Bonne journée
Michel





Publicité
Poster une réponse
Anonyme