Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

pge html cases à remplir

1 réponse
Avatar
jipi
Bonjour,

Sur une page HTML accessible en ouverture par un prog VBA=20
comment trouver la bonne case =E0 remplir puis s=E9lectionner=20
(activer) un des leins se trouvant sur cette page ?

Je d=E9bute sur ce sujet.

Merci de votre aide

jipi

1 réponse

Avatar
François Picalausa
"jipi" a écrit dans le message de
news:070e01c3c940$25799200$
Sur une page HTML accessible en ouverture par un prog VBA
comment trouver la bonne case à remplir puis sélectionner
(activer) un des leins se trouvant sur cette page ?



Bonjour/soir,

Si la case a un ID, tu peux utiliser l'utiliser via un getElementById ,
méthode d'un objet document.

Exemple:
'Ajouter dans les références Microsoft Internet Controls

Option Explicit
'"F:TestHTMLHTMLPage1.htm" contient ceci:
'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
'<html>
' <head>
' <title>Page de test</title>
' </head>
' <body>
' <p><input id="Text1" type="text"></p>
' <p><input type="text"></p>
' <p><input type="text"></p>
' <p><input type="text" name="Text4"></p>
' <a href="autrepage.htm">Clicker ici</a>
' </body>
'</html>

Private WithEvents IE As InternetExplorer

Private Sub Form_Load()
Set IE = New InternetExplorer
IE.Navigate "F:TestHTMLHTMLPage1.htm"
IE.Visible = True
End Sub

Private Sub IE_DocumentComplete(ByVal pDisp As Object, URL As Variant)
If URL = "F:TestHTMLHTMLPage1.htm" Then 'si on est sur la bonne page,
on complète les champs
Dim UnChamp As Object

'Pour le premier on a un ID
Set UnChamp = IE.Document.getElementById("Text1")
UnChamp.Value = "getElementById"

'Pour les second et troisième, on a rien...
Set UnChamp = IE.Document.getElementsByTagName("input")(1)
UnChamp.Value = "getElementsByTagName(1)"

Set UnChamp = IE.Document.getElementsByTagName("input")(2)
UnChamp.Value = "getElementsByTagName(2)"

'Pour le dernier, on a le nom
Set UnChamp = IE.Document.getElementsByName("Text4")(0)
UnChamp.Value = "getElementsByName"

'Pour clicker sur le lien, il faut d'abord retrouver le lien:
'On réemploie l'objet UnChamp pour le lien
Set UnChamp = IE.Document.getElementsByTagName("a")(0)
'UnChamp.Click si on veut clicker dessus
'Mais on pourrait simplement le rendre actif:
UnChamp.setActive
'et/ou lui donner le focus
UnChamp.focus
End If
End Sub

--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com