Extraction de donnée internet vers ma feuille Excel

Bonjour tout le monde,

Nouvellement sur le forum :)

J'ai actuellement un problème avec ma formule VBA que j'utilise pour extraire une donnée sur internet afin de garder mon fichier excel à jour.

J'utilise le code htmlCodePage et regexExtract

Comme suit:

Sub HomeDepot()

code = htmlCodePage("https: / /w w w.blablabla.com")
code = regexExtract(code, "<span class="hdca-product__description-pricing-price-value">(\d+) $</span>")(0)
MsgBox code

End Sub

Mais dans le code source pour la formule regexExtract, il y a déjà des guillemets en plus des miens pour ma formule.

Boîte de dialogue:
Erreur de compilation:
Attendu : séparateur de liste ou )

Merci d'avance pour votre aide !

Salut Christophe,

Sans doute ainsi, des guillemets dans une formule devant être eux-mêmes encadrés de guillemets pour informer Excel de leur présence dans ladite formule.

code = regexExtract(code, "<span class=" & """hdca-product__description-pricing-price-value""" & ">(\d+) $</span>")(0)

A+

Merci Curulis57,

J'ai essayé le code proposé et la boîte dialogue mentionne : Erreur d'exécution '13' : Incompatibilité de type

J'ignore la signification

Bonjour le forum,
Salut Christophe,

ah, les formules en VBA, j'hésite et je tâtonne toujours.
Le mieux serait qu'un expert ès formules s'arrête sur ta demande, tu gagnerais du temps!

Bon, il reste deux choix, à mon sens.

code = regexExtract(code, "<span class="""hdca-product__description-pricing-price-value""">(\d+) $</span>")

ou

code = regexExtract(code, "<span class=" & """"hdca-product__description-pricing-price-value"""" & ">(\d+) $</span>")

Après, j'attendrai, comme toi, la solution venue d'ailleurs!

A+

Bonjour à tous,

Pour insérer des guillements (") dans une String VBA il faut bien les doubler.

Càd

image

Salut !

J'ai modifié le code comme suit :

Sub HomeDepot2()

    code = htmlCodePage("https://w w w.homedepot")

    code = regexExtract(code, "<span class=""hdca-product__description-pricing-price-value"">(\d+) $</span>")

    Dim web As String
    web = """hdca-product__description-pricing-price-value"""
    Debug.Print web & " "

    MsgBox code

End Sub

Le code fonctionne cette fois, mais je n'obtient pas ma réponse dans le msgbox (elle apparait vide)

sinon, que puis-je faire pour envoyer la réponse dans la cellule A1 par exemple ?

La réponse que je cherche est (\d+) qui remplace le prix actuelle sur le site web

capture
Rechercher des sujets similaires à "extraction donnee internet feuille"