Excel crash au lancement après un Saveas

Bonjour, je tourne en rond depuis plusieurs jours avec un problème qui me semble impossible à résoudre. J'ai un fichier qui contient un Userform avec un grand nombre de champs. Lors du lancement du fichier, je charge les données dans le Userform à l'aide d'une routine qui contient quelques sous-routines et des fonctions.

Lorsque j'enregistre le fichier, tout baigne. Je peux le réouvrir et ça fonctionne. Lorsque je fais un Saveas et que j'attribue un nouveau nom, Excel plante systématiquement lors du prochain démarrage (la routine de lancement du Userform et celle qui charge les données sont dans l'Auto_open du fichier). Aucun message d'erreur ne s'affiche. Il est impossible de faire survenir le problème en utilisant F8 pour voir pas à pas le déroulement. Le crash survient seulement lors du lancement du fichier, suite au Saveas. Je ne vois aucune logique à la situation...???

Quelqu'un a une idée?

15analyse-v22l.xlsm (252.46 Ko)

Bonjour,

J'ai tenté de faire planter ton code comme tu le décris ... en vain.

Tout fonctionne à merveille.

Je n'ai rien trouvé non plus dans le code qui donnerait une piste sur ce "bug".

Ton fichier est-il bien situé sur le disque de la machine?

Quand tu enregistres-sous (saveas) en utilisant le bouton Enregistrer du formulaire, est-ce tu sauvegardes sur ta machine ou sur un lecteur externe ou encore sur un chemin réseau ?

ric

Merci Ric pour ta réponse. Je viens de réaliser que j'aurais du être plus précis. Je crois que le problème a un lien avec le chargement des données stockées dans la cellule B10 de la feuille Données dans le champ "Type de projet". Si tu remplis quelques champs, et que tu mets "Construction neuve bâtiment principal " comme choix à Type de projet, le problème se produira. J'ai joins un nouveau fichier pré-rempli et qui bug lors du lancement. Si tu fais un test, il devrait crasher. Tu devras l'ouvrir en maintenant la touche Maj pour pouvoir voir ce qui se passe en-dedans.

En réponse à ta question, j'enregistre sur mon bureau pour faire mes tests. Pas de lecteur réseau ou lecteur externe. Aussi, le problème survient si j'enregistre avec la commande Saveas de Excel autant que lorsque j'enregistre avec le bouton Enregistrer du formulaire. Donc le problème n'est pas lié au code qui fait l'enregistrement.

J'ai épluché chaque sous-routine qui découle du changement de la valeur pour Type de projet mais il n'y a effectivement rien qui cloche. Où du moins, c'es quelque chose de très subtil.

14demande-12345.xlsm (288.53 Ko)

Bonjour,

Il est impossible de faire survenir le problème en utilisant F8 pour voir pas à pas le déroulement.

Du tout ! Il te suffit de lancer le Workbook_Open en pas à pas après avoir effectué ton SaveAs...

Cordialement.

Bonjour à tous,

Je ne sais pas comment coller une image ici, voici donc un lien.

Effectivement, je réussis à avoir une fenêtre indiquant une erreur, puis Excel plante. Je dois terminer la tâche Excel dans le Gestionnaire des tâches.

Par contre, je ne trouve pas l'objet : IMdcCombo ... la rechercher dans tout le code ne donne rien.

ric

Bonjour à tous,

J'ai fait de la recherche sur le Net de : IMdcCombo

On y retrouve plusieurs sujets. Il semblerait que ce soit une valeur attribuée ou tentée d'être lue dans un combobox lors de l'initialisation du formulaire qui en soit la cause.

Il y a plusieurs combobox dans UsfPre_analyse, reste à trouver lequel.

ric

Rebonjour à tous,

Observation :

  • j'ai désactivé "Private Sub Workbook_Open"
  • j'ai créé un bouton sur la feuille "Analyse"
  • l'action du bouton : UsfPre_analyse.Show

Dès lors, en lançant l'ouverture du formulaire via ce bouton, je n'ai plus l'erreur et je n'ai plus de plantage.

Les gens très beaucoup plus meilleurs que moi comprendront sûrement le pourquoi de la cause de la chose.

ric

Bonjour, Salut Ric !

Pour information, j'ai chargé le dernier fichier qui avait été fourni, supposé planter. Comme d'habitude, j'ouvre directement à partir du forum : erreur 91 après avoir activé les macros, cependant cette erreur est fréquente lorsqu'on ouvre un fichier ainsi, et n'est pas significative. (D'ailleurs, je viens de refaire la manoeuvre, et là aucun plantage !)

J'ai ensuite fait un pas à pas (Ouf ! ) interminable, mais toujours pas de plantage.

Vu les tours, détours et contours que font les procédures, je ne me lance pas dans une analyse... !

Un hypothèse serait que lors d'un enregistrement sous un nouveau nom des éléments resteraient liés à l'ancien fichier... mais je n'ai rien trouvé pour l'étayer.

Cordialement.

Bonjour à tous,

Grâce au message d'erreur que Ric m'a partagé

"Erreur d'exécution '-2147417848 (80010108)': La méthode 'Value' de l'Objet 'IMdcCombo' a échoué" j'ai trouvé une solution qui fonctionne. Il suffisait d'ajouter un enregistrement du fichier (ActiveWorkbook.Save) juste avant le lancement du UserForm dans l'Auto_Open. Je n'ai pas trouvé d'explication logique au problème par contre. C'est un moindre mal car, en bout de ligne, je cherchais surtout la solution qui me permettrait de faire fonctionner le tout.

Merci Ric pour ton aide!!!

Bonjour,

ric

Rechercher des sujets similaires à "crash lancement saveas"