Bonjour à tous! (et spécial dédicace à Tatiak au passage!)
Voilà le pb (je précise je suis supernewbie) et là, je fais une macro
à l'aide de l'enregistreur de VBA.
Mon objectif: rapatrier sur une feuille excel ma recherche effectuée
dans le moteur de recherche google.fr sur les 100 premières pages
pour les deux mots clés: poesie+livre
Sub RequêteWeb001()
'
' RequêteWeb001 Macro
'
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://www.google.fr/search?as_q=poesie%2Blivre&hl=fr&num=100&btnG=Recherche+Google&as_epq=&as_oq=&as_eq=&lr=&as_ft=i&as_filetype=&as_qdr=all&as_occt=any&as_dt=i&as_sitesearch=&as_rights=&safe=images" _
, Destination:=Range("$A$2"))
.Name = _
"search?as_q=poesie%2Blivre&hl=fr&num=100&btnG=Recherche+Google&as_epq=&as_oq=&as_eq=&lr=&as_ft=i&as_filetype=&as_qdr=all&as_occt=any&as_dt=i&as_sitesearch=&as_rights=&safe=images"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = _
"9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,"
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = True
.WebDisableDateRecognition = True
.WebDisableRedirections = True
.Refresh BackgroundQuery:=False
End With
End Sub
Ouf!
C'est bien quand on connait pas comme moi la programmation VBA, alors
en attendant d'être plus calé, j'en fais appel à vos connaissances...
La macro est bien, mais forcément elle se limite à deux mots clés, ici:
poesie ET livre...
Comment pourrais je faire, sans à chaque fois aller resélectionner dans la fenêtre "requete web" d'excel, les 100 liens (tables?) pour d'autres mots clés?
Si je veux faire par exemple: philosophie+livre, je suis obligé de relancer une requête et aller resélectionner les 100 tables qui se déroulent dans la fenêtre...
Y aurait il moyen ou pas?? d'avoir juste une "zone" ou je tape mes mots clés..
et zouu la macro travaille...et que je n'ai pas autant de macros que j ai de combinaisons de mots.
J'avais pensé à faire un "copier/coller" de la macro, là, telle qu'elle est retranscrite, et à chaque fois changer les mots lorsque j ai une combinaison
donnée (c'est plus rapide que d'aller reselectionner toutes les tables de la fenetre de résultats de google...),
mais Y a t il mieux que ca, avec une petite
boite de dialogue par exemple...
Merci d'avance!
Eric
Voilà le pb (je précise je suis supernewbie) et là, je fais une macro
à l'aide de l'enregistreur de VBA.
Mon objectif: rapatrier sur une feuille excel ma recherche effectuée
dans le moteur de recherche google.fr sur les 100 premières pages
pour les deux mots clés: poesie+livre
Sub RequêteWeb001()
'
' RequêteWeb001 Macro
'
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://www.google.fr/search?as_q=poesie%2Blivre&hl=fr&num=100&btnG=Recherche+Google&as_epq=&as_oq=&as_eq=&lr=&as_ft=i&as_filetype=&as_qdr=all&as_occt=any&as_dt=i&as_sitesearch=&as_rights=&safe=images" _
, Destination:=Range("$A$2"))
.Name = _
"search?as_q=poesie%2Blivre&hl=fr&num=100&btnG=Recherche+Google&as_epq=&as_oq=&as_eq=&lr=&as_ft=i&as_filetype=&as_qdr=all&as_occt=any&as_dt=i&as_sitesearch=&as_rights=&safe=images"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = _
"9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,"
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = True
.WebDisableDateRecognition = True
.WebDisableRedirections = True
.Refresh BackgroundQuery:=False
End With
End Sub
Ouf!
C'est bien quand on connait pas comme moi la programmation VBA, alors
en attendant d'être plus calé, j'en fais appel à vos connaissances...
La macro est bien, mais forcément elle se limite à deux mots clés, ici:
poesie ET livre...
Comment pourrais je faire, sans à chaque fois aller resélectionner dans la fenêtre "requete web" d'excel, les 100 liens (tables?) pour d'autres mots clés?
Si je veux faire par exemple: philosophie+livre, je suis obligé de relancer une requête et aller resélectionner les 100 tables qui se déroulent dans la fenêtre...
Y aurait il moyen ou pas?? d'avoir juste une "zone" ou je tape mes mots clés..
et zouu la macro travaille...et que je n'ai pas autant de macros que j ai de combinaisons de mots.
J'avais pensé à faire un "copier/coller" de la macro, là, telle qu'elle est retranscrite, et à chaque fois changer les mots lorsque j ai une combinaison
donnée (c'est plus rapide que d'aller reselectionner toutes les tables de la fenetre de résultats de google...),
mais Y a t il mieux que ca, avec une petite
boite de dialogue par exemple...
Merci d'avance!
Eric