Bonjour,
Je souhaite automatise une tache répétitive via une macro en VBA. Mon souci est que je n’arrive pas à renseigner le champ qu’il faut sur la page web. C’est une page SSRS. Si quelqu’un peut me donner des pistes je suis preneur.
Le code de ma macro :
en pièces jointe le code Html que j'essai d'atteindre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
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 Option Explicit Public Sub Navigateur() Dim oNav As InternetExplorerMedium Dim oDoc As HTMLDocument Dim objCollection As Object Set oNav = New InternetExplorerMedium oNav.Visible = True oNav.navigate "http://xxxxxxxxxxxxxxxx" ' Attente avec timeout de 10 s If WaitIE(oNav, 10) Then ' 10 s écoulées et page non chargée MsgBox "Time out!" Else ' Page chargée, on continue Set oDoc = oNav.document Set objCollection = oDoc.getElementsById("ReportViewerControl_ctl04_ctl03_txtValue") objCollection.Value = "400056958" End If End Sub Public Function WaitIE(oNav As InternetExplorerMedium, Optional pTimeOut As Long = 0) As Boolean Dim lTimer As Double lTimer = Timer Do DoEvents If oNav.readyState = READYSTATE_COMPLETE And Not oNav.Busy Then Exit Do If pTimeOut > 0 And Timer - lTimer > pTimeOut Then WaitIE = True Exit Do End If Loop End Function
Merci a tous ceux qui pourrons m'aider.
Partager