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 :

Récupérer des données utilisateur pour traquer un bug aléatoire (L’objet invoqué s’est déconnecté) [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de francis60
    Homme Profil pro
    Modélisation coût/process
    Inscrit en
    Août 2011
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Modélisation coût/process
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2011
    Messages : 184
    Par défaut Récupérer des données utilisateur pour traquer un bug aléatoire (L’objet invoqué s’est déconnecté)
    Bonjour à tous,

    J'ai une application déployée via un fichier .xlam qui produit une erreur aléatoire sur certains postes utilisateur qu'il m'est impossible de reproduire.
    J'ai automatisé l'envoi d'un mail sur mon poste en automatique, lorsque ça survient pour la documenter.
    Jusqu'à présent j'ai récupéré la Description (Erreur Automation L’objet invoqué s’est déconnecté de ses clients) et le numéro de l'erreur (-2147417848).
    ainsi que la ligne de code incriminée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CodeNames("OngletCache").Rows(InsFirstRow & ":" & InsLastRow).Insert Shift:=xlDown
    CodeNames est une collection de feuilles d'un classeur désignés par leur Codename, ici OngletCache. C'est une ligne entière qui est copiée dans le presse papier.

    J'ai déjà essayé d'introduire un DoEvents que j'ai depuis enlevé car le bug continuait d’apparaître.

    Pourriez-vous me dire quels informations sur l'état du poste utilisateur je pourrais inclure dans mon mail d'alerte pour trouver d'où ça vient.

    Je pense en particulier à la mémoire locale du poste et peut-être aussi aux paramètres locaux de l'imprimante qu pourraient créer des problèmes avec les sauts de lignes.

    Bien cordialement,

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 609
    Par défaut
    Bonjour,

    Essaie en changeant xlDown par xlShiftDown

  3. #3
    Membre confirmé Avatar de francis60
    Homme Profil pro
    Modélisation coût/process
    Inscrit en
    Août 2011
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Modélisation coût/process
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2011
    Messages : 184
    Par défaut
    Merci parmi,
    Peux-tu m'expliquer la différence entre xldown et xlshiftdown?

    En attendant, j'ai testé ta proposition, le programme fonctionne comme avant sur mon poste.
    Je vais distribuer la modification et attendre voir si j'ai moins de bugs utilisateur qu'avant.

  4. #4
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 609
    Par défaut
    Normalement ça devrait être xlShiftDown si on se fie à l'aide.
    Les constantes peuvent peut-être avoir des valeurs différentes selon les postes (versions)...

    Ça ne répond pas vraiment à ta question, mais ça peut peut-être régler cette erreur si c'est le cas...

  5. #5
    Membre confirmé Avatar de francis60
    Homme Profil pro
    Modélisation coût/process
    Inscrit en
    Août 2011
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Modélisation coût/process
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2011
    Messages : 184
    Par défaut
    Tous les utilisateurs ont Excel 2007 et Windows7.

    Je dois aussi découper mon module qui fait 4 000 lignes en différents sous modules de moins de 1000 lignes chacun.
    Ça m’embête de devoir passer toutes mes procédures en Public Sub mais je crois que je n'ai pas le choix si je veux que mes sous modules continuent à communiquer entre eux.

  6. #6
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 609
    Par défaut
    Un module de 4000 lignes n'est exagéré, il me semble.
    Je ne vois pas la nécessité à moins que tu ne charges toutes sortes de choses dans tes macros...

    C'est-à-dire que tout l'espace mémoire demandé par le module est affecté à l'ouverture d'un module (variables, objets,...), ce qui peut causer un ralentissement à l'occasion... mais pas toujours évident.
    Il peut arriver que ce soit bien de le faire surtout si travailles avec différentes applications où tu alloues de bons espaces mémoires (Outlook, Access, IE, ...)
    À ce moment-là, séparer les applications en différents modules devrait donner un peu plus de vitesse.
    C'est du moins le cas sous VB6 où on avait remarqué de meilleures performances...

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

Discussions similaires

  1. [MySQL] récupérer des données formulaires pour les insérer dans une BD
    Par Hamzaviola dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 26/05/2016, 13h06
  2. Réponses: 7
    Dernier message: 20/07/2007, 15h42
  3. cherche module ou langage pour récupérer des données audio..
    Par Ry_Yo dans le forum Langages de programmation
    Réponses: 5
    Dernier message: 12/05/2003, 17h44

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