Erreur Automation - Interrogation html
Bonjour,
J'ai réalisé un peu programme (avec l'aide d'internet) pour interroger des pages internet de chronopost pour récupérer l'information de l'état d'avancement du colis.
Le programme fonctionne mais fonctionne seulement avec la première adresse, mais lorsque j'arrive pour la deuxième adresse il fait une erreur de ce type :
"Erreur d’exécution '-214741848(80010108)':
Erreur Automation
L'objet invoqué s'est déconnecté de ses clients."
A chaque relance du programme, même résultat
Voici le code :
Code:
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 40 41 42 43 44 45 46 47 48
| Sub Wait(ie As InternetExplorer)
'On boucle tant que la page n'est pas totalement chargée
Do Until ie.ReadyState = READYSTATE_COMPLETE
DoEvents
Loop
End Sub
Sub ouvrirIE_Chronopost()
'Déclaration des variables
Dim ie As New InternetExplorer
Dim IEdoc As HTMLDocument
Dim Statut As String
Dim Adresse As String
Dim NLigne As Integer
'Application.ScreenUpdating = False
Windows("Table HL_20150630.xls").Activate
Sheets("Analyse Flux Aller").Activate
'NLigne = Cells(1, 1).CurrentRegion.Rows.Count
For i = 0 To 200
Adresse = Cells(i, 36)
' ex d'adresse
'http://www.chronopost.fr/expedier/inputLTNumbersNoJahia.do?listeNumeros=DH953027702EE
'http://www.chronopost.fr/expedier/inputLTNumbersNoJahia.do?listeNumeros=DH957027699EE
'http://www.chronopost.fr/expedier/inputLTNumbersNoJahia.do?listeNumeros=DH957027889EE
If Adresse <> "" And Cells(i, 43) = "CHRONOPOST" Then
'Charger le site internet de Chronopost
ie.Navigate Adresse
'Affichage de la fenêtre IE
ie.Visible = True
'On attend le chargement complet de la page
Wait ie
'On pointe le membre Document
Set IEdoc = ie.document
Set HtmlElementStandard = IEdoc.body.all(47)
' définition du statut (innertext à utiliser ??)
Statut = HtmlElementStandard.innerText
' on place le statut dans la cellule concernée
Cells(i, 37).Value = Right(Statut, Len(Statut) - 47)
'On libère la variable IE
Set ie = Nothing
'Fermer l'instance d'IE
ie.Quit
End If
Next i
'Application.ScreenUpdating = True
End Sub |
merci d'avance pour votre aide