Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

VBA Beug Erreur Automation Userform

726 views
Skip to first unread message

raphael-diaz

unread,
Mar 9, 2012, 5:43:47 AM3/9/12
to
Bonjour, Voilà mon PROBLEME :
J’utilise Excel 2003 conformément à la norme de ma société. Le problème
n’apparait pas dans Excel 2010.
J’ouvre mon fichier Excel, je lance mon userform. Pas d’erreur. J’enregistre et
ferme le fichier Excel puis l’ouvre de nouveau. Je relance mon userform :
l’erreur suivante apparait.

« Erreur d’exécution ‘-2147417848 (80010108)’ :
Erreur Automation
L’objet invoqué s’est déconnecté de ses clients. »

L'erreur est générée par une référence à un objet classeur qui a été détruit (ou
fermé). La référence à l'objet book alors que le classeur a été détruit génère
l'erreur d'exécution -2147418094 (80010012).

CAUSE POSSIBLES
1/ Après lecture de forum
http://forum.hardware.fr/hfr/Programmation/VB-VBA-VBS/vb6-debug-tracking-sujet_91638_1.htm
je trouve des histoires de modules MDAC/ADO OLE ou de DLL a regsvr32-iser. Je ne
comprends pas bien ce que c’est ni ce que je peux faire avec ça...
2/ Le problème vient peut être du fait que lorsqu’on affiche de nouveau
l'userform, le fichier Excel ou l’userform n’ont pas été correctement trouvé ou
déchargé. A la fermeture de l’userform tout ses control auraient du être vidés
??
3/ Il est probable qu’une instruction ferme le fichier ou supprime l’UserForm
alors que celui-ci est encore actif...
4/ Après debuggage avec MsgBox les endroits qui entrainent le beug sont :
* L'initialisation du l’Userform : UserForm_Initialize. Certains ComboBox,
CheckBox et TextBox entrainent systématique le beug à la 2ème ouverture du
fichier.
* La fonction sub "RecupereValeur". Après un certain stade de recherche, le code
« sature ». Le début de cette « saturation mémoire » fait planter le programme
et se situe au milieu des appels de la troisième page de l’userform
"prestations"

SOLUTIONS ESSAYEES
* Ferme l'Userform dans le code de l'userform au lieu de le fermer dans la
fonction appelante-> FAIT SANS RESULTAT
* En début de tes formulaires et des tes modules ajoute la ligne : Option
Explicit-> FAIT SANS RESULTAT
* Ferme l’userform avec la fonction end et non avec la fonction unload ->FAIT
SANS RESULTAT
* Regarder dans tous les livres d’autres solutions avec la recherche « Erreur
Automation » -> EN COURS
* Recopier un à un les modules dans un nouveau classeur et de re-dessiner le
UserForm en question car le fichier peut être corrompu -> FAIT SANS RESULTAT

Gloops

unread,
Mar 14, 2012, 5:16:38 PM3/14/12
to
raphael-diaz a écrit, le 09/03/2012 11:43 :
> L'erreur est générée par une référence à un objet classeur qui a été détruit (ou
> fermé). La référence à l'objet book alors que le classeur a été détruit génère
> l'erreur d'exécution -2147418094 (80010012).

Bonjour,

J'imagine que le gars qui a écrit l'application est parti ?

Parce que le meilleur moyen d'arriver à la solution serait qu'il pose la
question dans le newsgroup microsoft.public.fr.access en citant
l'instruction qui pose problème (avec quelques lignes avant pour situer
le contexte).

Ce souci (avec différence d'une version à l'autre) ne me rappelle rien
de précis, mais c'est sûr que sans savoir quel est le code qui plante,
c'est encore plus dur de deviner ...

Un certain nombre d'experts Access sont partis depuis que Microsoft a
fermé son serveur, mais sauf si j'ai loupé un épisode le problème se
rencontre ici aussi. Donc la meilleure chance d'aboutir sera obtenue en
ciblant juste.


Gloops

unread,
Mar 14, 2012, 5:18:50 PM3/14/12
to
Gloops a écrit, le 14/03/2012 22:16 :
> question dans le newsgroup microsoft.public.fr.access en citant

Ah oui, euh ... il commence à être l'heure, Papy va aller prendre ses
gouttes :)

Je voulais dire microsoft.public.fr.excel



thibau...@gmail.com

unread,
Feb 20, 2014, 4:30:08 AM2/20/14
to
Bonjour à tous,

J'ai eu plusieurs fois le soucis de ce type (VBA userform : erreur -214747848 erreur automation le client s'est déconnecté...). Une fois cliqué sur ok le fichier plantait systématiquement.

Parfois ce bug apparaissait seulement lorsque nous protégions le code, et toujours à l'ouverture d'un formulaire.

Dans mon cas la suppression d'une textbox puis l'ajout d'une textbox à résolu le problème.

Ps le formulaire est assez important (500 contrôles) et le fichier en lui même aussi.

Gloops

unread,
Feb 20, 2014, 7:12:09 AM2/20/14
to
Bonjour,

Apparemment il faut chercher du côté de la protection du code, je n'en
sais pourtant pas bien lourd sur le moyen de protection mis en œuvre ;)

En règle générale il faut toujours convertir le numéro d'erreur en
hexadécimal (et garder les huit chiffres de droite) pour le chercher sur
Internet, sans le x, mais quand j'ai cherché F3333538 ça n'a rien donné
de probant ...

Il y a pourtant des gens à qui ça a l'air d'évoquer quelque chose
puisqu'ils ont appelé leur page web comme ça pour refourguer leurs produits.

J'ai pourtant un doute quant à poser la question à la nénette qui
répondra au téléphone ...


ça tourne sur quelle application, et quelle est l'application de
protection des données ?


____________________________________________________
0 new messages