vba-rechercher un texte dans une page web

philppe27

XLDnaute Occasionnel
Bonjour,

Quel est le code pour:
rechercher un texte ou un objet dans une page web
atteindre ce texte dans la page
déterminer si c'est un lien hypertexte
si oui activer ce lien

par ex
if cherche("xxxxx")=vrai and "xxxxx"=lien hypertexte
atteindre "xxxxx"
sendkeys"{ENTER}
else
......
end if

Merci d'avance pour vos réponses

Cordialement
 

philppe27

XLDnaute Occasionnel
Re : vba-rechercher un texte dans une page web

Merci beaucoup Catrice pour ton fichier.
Sans être aussi efficace j'avais commencé à faire quelque chose qui ressemblait à cela.
La question que je me posais était aussi d'essayer d'éviter de recopier la page sur excel. A ton avis cela est-il possible ?

Merci d'avance
 

Arnault30

XLDnaute Nouveau
Re : vba-rechercher un texte dans une page web

J'ai utilisé le code présenté avec succès, merci beaucoup pour cette contribution. Cependant j'ai un petit soucis.
Lorsque le code copie colle des valeurs du type 1/2, il place automatiquement dans le tableau excel la valeur 1-févr... Quelque soit le préformatage des cellules (j'ai tout testé) ou le changement de format.

Pire si après le copier coller on demande de changer de 1-févr en nombre ou en texte on se retrouve avec une valeur du type 40455.

Est ce qu'il existe un moyen pour spécifier le format des données que l'on importe ?
Merci pour votre aide :)
 

Celeda

XLDnaute Barbatruc
Re : vba-rechercher un texte dans une page web

Bonjour,

Arnaud, je me permets de m'accrocher à ta demande (un éventuel exemple pourrait nous aider), parce que moi je rencontre une autre difficulté (je suis sur 2007);
quand je place un nouveau site (ex: xld), voici la ligne de code qui bug :

.Refresh BackgroundQuery:=False

As-tu eu ce genre de difficulté ?
Et comment peut-on la résoudre ?

question pour tout le monde, of course :)

Merci à l'avance.
 

Arnault30

XLDnaute Nouveau
Re : vba-rechercher un texte dans une page web

@ Celeda

il me semble que j'ai déjà eu ce bug, simplement parce que l'adresse était mauvaise, le code présenté dans le classeur fait une complétion de "http://" & monsite. Donc si dans la cellule on indique un url avec http, on se retrouve avec une fonction qui va essayer de chercher Ce lien n'existe plus...... Du coup ça plante :)
 
Dernière édition:
G

Guest

Guest
Re : vba-rechercher un texte dans une page web

Bonjour à tous,

@Philippe c'est possible mais plus compliqué.
@Arnault30, Comment tu copies/colles tes valeurs? Par vba?
@Celeda, j'ai pas trop compris ton problème et son rapport avec le reste.

A+
 

Celeda

XLDnaute Barbatruc
Re : vba-rechercher un texte dans une page web

Bonjour,

Merci Arnaud pour le tuyau : effectivement c'est ce que j'avais fait http.....!
Super merci;

Hasco : résolu par Arnaud, l'histoire du bug dans le code.


Edit : et aussi merci à l'auteur.:cool:
 

Arnault30

XLDnaute Nouveau
Re : vba-rechercher un texte dans une page web

oui par vba, enfin je suppose la méthode donné par Catrice n'explicite pas le copier coller... m'enfin j'ai contourner le truc de manière très grossière en abusant de "replace", c'est pas très propre mais ça ira...
 
G

Guest

Guest
Re : vba-rechercher un texte dans une page web

Arnaud,

Range("A1")= "'1/2" tu mets un ' avant la valeur.

Je te rapelle la charte du forum qui conseille de mettre dans chacun de nos post en début et en fin une formule de politesse du style "Re, re- bonjour" et A+ ou A bientôt etc...

Prenons le temps d'être.

A+
 

Arnault30

XLDnaute Nouveau
Re : vba-rechercher un texte dans une page web

Re bonjour,

Milles excuses si j'ai froissé les us et coutumes du forum.
Merci pour ton aide. Mais ça ne marchera pas
le code ne permet pas de spécifier un format à la volée lors de la copie. Ou alors je comprends mal où tu souhaites en venir :)

Code:
With Sheets("Req")
    .Cells.Clear
    With .QueryTables.Add(Connection:="URL;" & monsite, Destination:=.Range("A1"))
        .WebSelectionType = xlEntirePage
        .Refresh BackgroundQuery:=False
    End With
End With


Par contre c'est Arnault et pas Arnaud, j'y tiens. La politesse c'est aussi prendre le temps de bien lire les pseudo / prénoms des gens. Ca a surement sa place dans la charte :)

A bientôt
 
G

Guest

Guest
Re : vba-rechercher un texte dans une page web

Re, Arnault30,
Lorsque le code copie colle des valeurs du type 1/2

Je pensais que tu parlais d'un code que tu avais écris pour copier/coller des valeurs retournées par la requête. D' où ma réponse.

Ci-dessous le deuxième paramètre(=True) empêchera la reconnaissance des date. Le "1/2" ne devrait plus être interprété comme une date.

Code:
With Sheets("Req")
    .Cells.Clear
    With .QueryTables.Add(Connection:="URL;" & monsite, Destination:=.Range("A1"))
        .WebDisableDateRecognition = True
        .WebSelectionType = xlEntirePage
        .Refresh BackgroundQuery:=False
    End With
End With

A+
 
Dernière modification par un modérateur:

Discussions similaires

Statistiques des forums

Discussions
314 491
Messages
2 110 182
Membres
110 692
dernier inscrit
paul58290