Importation de données boursière depuis site Internet

Bonjour,

J'ai parcouru les différents sujets du forum relatifs à l'importation de données boursières à partir d'un site internet (J'utilise pour ma part abcbourse mais le principe est relativement le même pour chaque site)).

Mon objectif est d'importer différentes données boursières. J'ai réussi à en importer pas mal en suivant ce qui se disait sur ce sujet (Cf. forum recupp cours de bourse dans Excel) mais j'ai un problème pour lequel je ne trouve pas de solution. Je m'explique:

J'ai jusqu'à présent réussi à importer quelques données qui m'intéressaient et je souhaite maintenant extraire les données Bénéfice net par action (BNPA) pour 2019, 2020 et 2021 (dans des cases séparées) sur mon Excel.

En examinant le code source de la page (Prenons pour l'exemple la valeur Albioma sur le site d'abcbourse (Désolé, je ne peux pas poster de lien sur le forum...), ces données se trouvent dans un tableau. D'habitude j'encadrais la valeur que je souhaitais extraire par les ligne de code en amont et en aval pour extraire les données (De la forme "Split(Split(.responseText, avant)(1), après)(0)" ). Or, dans ce cas, il est difficile de le faire car les caractères qui entourent ces valeurs sont beaucoup trop courants dans le code source de la page pour pour pouvoir y arriver facilement.

D'après le code source, je souhaite extraire les valeurs 1,43, 1,76 et 1,78

<td class="t1 tipt" title="Bénéfice net par action">BNPA (€)</td>
<td>1,43 </td>
<td>1,76 </td>
<td>1,78 </td>
</tr>

Pour la première, j'y arrive, le code VBA est (Je passe sur la définition des valeurs) :

avant = "<td class=""t1 tipt"" title=""Bénéfice net par action"">BNPA (€)</td>"

apres = "</td>"

BNPA2019(i, 1) = Replace(Split(Split(.responseText, avant )(1), apres)(0), "<td>", "")

J'ai réfléchi à faire un 3e Split mais cela ne m'aide pas. Je me dis qu'il faudrait peut-être faire un split de la zone du code que j'ai copié plus haut, donc en définissant:

avant = "<td class=""t1 tipt"" title=""Bénéfice net par action"">BNPA (€)</td>"

apres = "</tr>"

puis de réussir à faire un split à l'intérieur de celui-ci en ayant comme commande de sortir les éléments situé entre le 1er <td> et le 1er </td> pour extraire le 1,43, le 2e >td> et le 2e </td> pour extraire le 1,76 etc.

Merci par avance de votre aide,

Popop

Bonjour et bienvenue,

Peux-tu confirmer ta version Excel ?

Cdlt.

Bonjour,

Excel 2007.

Je vous remercie,

Popop

Rechercher des sujets similaires à "importation donnees boursiere site internet"