IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Erreur Automation - Interrogation html


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 166
    Par défaut 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 : 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
    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

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Bonsoir,

    à première vue il faut que tu sorte de ta boucle la fermeture d'Internet explorer et la libération de ta variable ie

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 166
    Par défaut
    merci pour la réponse

    par contre, queveux tu dire par " la libération de ta variable ie" ?

    Cordialement,

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Set ie = Nothing 'la tu libère ta variable 
            'Fermer l'instance d'IE
            ie.Quit 'la tu as une erreur car tu as déjà libéré ta variable

  5. #5
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Citation Envoyé par grimgrim Voir le message
    ....
    par contre, queveux tu dire par " la libération de ta variable ie" ?
    ...
    Bonjour,


    je sais pas d'où viens ton code mais les lignes commençant par une apostrophe : ' sont des commentaires, il faut les lire ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA-E]erreur automation
    Par bernard38 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 02/08/2023, 15h48
  2. erreur automation : l'objet..
    Par nath-0-0 dans le forum Access
    Réponses: 3
    Dernier message: 08/09/2006, 16h51
  3. [VBA-E]Erreur automation
    Par bernard38 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/04/2006, 09h22
  4. [VBA-E] Erreur automation
    Par Elstak dans le forum Macros et VBA Excel
    Réponses: 32
    Dernier message: 07/04/2006, 15h02
  5. [VBA-E]Erreur Automation en faisant du multicasting
    Par GnarlyYoyo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/04/2006, 13h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo