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

VBA Access Discussion :

Message d'erreur lors du lancement d'une macro contenue dans un module [AC-2000]


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2010
    Messages
    149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2010
    Messages : 149
    Par défaut Message d'erreur lors du lancement d'une macro contenue dans un module
    Salut à tous.

    Dans un formulaire, j'ai un bouton qui fait appel a un module. Ce module me permet d'importer des données depuis Excel.
    J'ai donc activé les références pour pouvoir utiliser le VB liés à Excel.

    Quand je lance ma macro, une fois sur deux j'ai le message
    "Erreur 462, le serveur distant distant n'existe pas ou n'est pas disponible"

    J'ai recherché sur le forum des Threads correspondants à ce probleme et j'ai tenté de le résoudre, mais sans résultats jusqu'a présent.

    Voila comment je déclare mes variables en début de programme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Set App = New Excel.Application
    App.Visible = False
    wb = OuvrirUnFichier(Application.hWndAccessApp, "Parcourir", 1, "Fichier Excel")
    Set Wkb = App.Workbooks.Open(wb)
    Set WSht = Wkb.Worksheets("SIF")
    Et voila la fin de mon module :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    ActiveWorkbook.SaveAs "Evolution_" & WbName
    DoCmd.SetWarnings True
    'Timer for execution duration
    sngChrono = Timer - sngChrono
    MsgBox "Execution Time : " & CStr(sngChrono) & " s. " & CStr(sngChrono / 60) & "m"
    'Last message
    MsgBox ("End of Importation")
    'Kill Excel.exe process
    TermProcess "EXCEL.EXE"
    Forms![Summary]!PBImport.Visible = False
    End Sub
    La fonction termProcess permet de terminer le processus Excel.

    Merci d'avance de votre aide !

  2. #2
    Expert confirmé
    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Par défaut
    bjr,

    Citation Envoyé par Tydher Voir le message
    [...]une fois sur deux j'ai le message
    une fois sur deux c'est souvent signe d'un problème de process qui ne se ferme pas

    Citation Envoyé par Tydher Voir le message
    La fonction termProcess permet de terminer le processus Excel.
    et effectivement tu ne devrais pas à avoir à forcer l'arrêt d'excel
    (en plus si l'utilisateur a un fichier excel ouvert non sauvegardé c'est pas de chance pour lui...)

    il faut bien écrire le code d'accès à excel pour éviter que le process ne reste ouvert
    il y a beaucoup de discussions sur le forum sur le sujet
    principalement il faut :
    1 - éviter d'appeler directement des objets excel sans préciser l'objet parent
    il arrive souvent qu'on laisse une référence directe à une cellule dans un paramètre, par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WSht.Range("A1").Copy Range("B1")
    à remplacer par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WSht.Range("A1").Copy WSht.Range("B1")

    2 - fermer proprement le classeur sans laisser une boîte de dialogue de confirmation :
    - on peut éventuellement laisser l'appli excel visible le temps de vérifier qu'il n'y a pas de boîtes de dialogue ouverte qui bloquerait la fermeture du classeur)
    - et on peut mettre DisplayAlerts à False pour éviter justement ces boîtes de message (la réponse par défaut sera automtiquement validée)

  3. #3
    Membre très actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2010
    Messages
    149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2010
    Messages : 149
    Par défaut
    Merci de ta réponse.

    Je vais donc reparcourir entierement ma macro et voir si j'ai bien écrit toutes les références.
    Je pensais que cela venait juste du fait je n'utilisais pas la bonne syntaxe ou les bonnes formules pour terminer ma macro.

    Je regarde ce que je peux modifier et je reposte dans quelques temps !

  4. #4
    Membre très actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2010
    Messages
    149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2010
    Messages : 149
    Par défaut
    En effet, après avoir re-parcouru tout mon code, et en modifiant telle que tu me la expliqué, je n'ai plus le message d'erreur une fois sur deux.

    Merci beaucoup !

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

Discussions similaires

  1. [AC-2007] erreur lors du lancement d'une macro
    Par david89 dans le forum VBA Access
    Réponses: 7
    Dernier message: 29/08/2011, 05h28
  2. erreur lors du lancement d'une application vb.net
    Par amarige dans le forum VB.NET
    Réponses: 7
    Dernier message: 05/05/2009, 14h07
  3. message d'erreur lors d'ouverture d'une bibliothéque
    Par hbennou dans le forum SharePoint
    Réponses: 0
    Dernier message: 08/05/2008, 20h33
  4. [IO] message d'erreur lors de l'acces à une image
    Par etoileDesNeiges dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 24/05/2007, 13h31
  5. Erreur lors du lancement d'une application
    Par mouloudéen dans le forum Access
    Réponses: 1
    Dernier message: 09/10/2006, 02h57

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