Bonjour,
ci dessous un morceau de code qui récupère des données d'un site Web:
Code vb : 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
34
35
36
37
38
39
 For ir = 0 To nr
            urlCurReunion = "http://www.somesite.fr/fr/res/reunion?id=" & curReunionId(ir)
           IE.Navigate urlCurReunion
           'IE.Visible = True
            While IE.Busy
               DoEvents
            Wend
 
repeat:
            Sleep (500)
            Set col1 = doc.getElementsByTagName("TABLE")
            If (col1.Length <> 0) Then
              For i = 0 To col1.Length - 1
                  Set el1 = col1.Item(i)
                 If (el1.classname = "double") Then 
                  'If (el1.classname = "reunion border gray") Then
                      flg = True
                      Exit For
                  End If
              Next
            End If
 
            Set col1 = el1.tBodies(0).Rows   
            Sleep (100)
            nc = col1.Length
            If nc = 0 Then GoTo repeat
 
 
            ws.Cells(10, 4) = dtDate
            For ic = 1 To nc - 1   
               Set el1 = col1.Item(ic)
               Set col2 = el1.Cells(1).getElementsByTagName("a")
               Sleep (200)
               identC(ic - 1, 1) = el1.all.Item(6).innertext
               ....................
               ......................
           next
           ir=ir+1
next
Il arrive que certaines données attendues dans la boucle for pour un ic donné soient celles déjà récupérées pour l'ic précedent.
J'ai eu l'impression que de mettre des attentes avant le chargement de certaines variables résolvait le problème.
Est-il pensable que certaines variables n'aient pas eu le temps de recevoir leur valeur?