VBA Erreur d'exécution '459' sur un userform

Résolu
micom59 Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   -  
pilas31 Messages postés 1825 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

j'ai un soucis lors de l'exécution d'un userform de mon fichier excel, celui-ci me sort comme erreur :

Erreur d'exécution '459':
Lo'bjet ou la classe ne gère pas le jeu d'événements

le code lié est :

Sub ouvrirOperations()
Sheets("Racine").Select
F_OrdreVir.Show
End Sub

Le débuggeur me surligne la ligne F_OrdreVir.Show où F_OrdreVir est l'userform en question.

savez-vous pourquoi?

J'ai un autre userform qui s'ouvre de la même facon et lui qui ne bug pas, je ne comprends donc pas.

Merci d'avance.

Mickaël.

14 réponses

micom59 Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   1
 
quelqu'un aurait une petite idée?
Merci a vous d'y jeter un petit coup d'oeil.
0
pilas31 Messages postés 1825 Date d'inscription   Statut Contributeur Dernière intervention   646
 
Bonjour,

C'est difficile de comprendre ton problème car c'est surement à l'initialisation de ton Userform qu'il y a un problème. Il faudrait que nous sachions ce qui s'exécute à l'initialisation.

Si c'est possible tu peux peut-être déposer un fichier réduit avec l'erreur sur www.cijoint.fr

A+

Cordialement,
0
micom59 Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   1
 
merci pour votre réponse,

le code de l'initialize de l'user form en question est

Private Sub UserForm_Initialize()
Me.DateJour = Date
Me.natOperat.RowSource = "typeOper"
Me.typeVir.RowSource = "typerVir2"
Me.banqueOper.RowSource = "typebanque"
End Sub

si cela peut vous aider.

quand j'execute ce code j'ai encore l'erreur 459 mais aucun surlignage jaune.
0
micom59 Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   1
 
j'ai déposé mon fichier sur

http://www.cijoint.fr/cjlink.php?file=cj200902/cijsp8w7Oa.xls

si tu cliques sur Saisie des opérations tout en haut tu y veras l'erreur.
0
pilas31 Messages postés 1825 Date d'inscription   Statut Contributeur Dernière intervention   646
 
Re bonjour,

Je ne vois pas le problème, j'ai reproduit le même Userform et chez moi celà fonctionne.

1/ Une question naive, c'est bien la plage de valeur typerVir2 et non pas typeVir2.
2/ Par ailleurs, il faudrait essayer en supprimant le Me. devant chaque commande
3/ Ce sont bien un champ texte et trois combos ?
4/ si ça plante toujours essayer de mettre un commentaire successivement devant chacune des instructions pour essayer de trouver celle qui pose problème.

A+


0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour,
Quand il y a une erreur dans l'initialisation d'un UF c'est effectivement la ligne UF.show qui est surlignée en erreur
Pour trouver la ligne ou la commande qui génére l'erreur...
Mettre un point d'arret sur l'UF.Show et faire du pas à pas (F8) quand la ligne en erreur est rencontrée, le curseur retourne sur UF.Show, comme ça tu peu déja voir sur quel ligne ça cloche.
A+
0
micom59 Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   1
 
En fait il n'y a que chez moi que le fichier plante, un camarade vient de l'ouvrir sur son pc et ca marhce aussi..
a par le fait qu'il utilise excel 2008, et moi 2003 je ne vois pas de différence.
0
micom59 Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   1
 
J'ai fais le pas a pas avec le point d'arret sur useform, chaque ligne du code de mon userform plante pendant le pas a pas.
0
micom59 Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   1
 
ah, j'ai une nouvelle,

j'ai supprimé tous mes codes et tenté d'ouvrir simplement l'userform et il me donne toujours l'erreur d'execution 459, l'autre userform présent sur le fichier lui s'ouvre toujours.
Est-ce possible que ca ne soit pas une erreur de code?
0
pilas31 Messages postés 1825 Date d'inscription   Statut Contributeur Dernière intervention   646
 
Lermite et micom,

Moi j'avais une erreur curieuse sur l'instruction Date que je ne m'explique pas. J'ai modifié le code en mettant :

Me.DateJour = DateTime.Date

Et maintenant tout fonctionne normalement.

Je ne comprends pas

A+
0
micom59 Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   1
 
moi non plus je comprends pas, j'ai changé l'instruction date, mais ca ne change rien
0
pilas31 Messages postés 1825 Date d'inscription   Statut Contributeur Dernière intervention   646
 
A tout hasard,

Moi je n'ai pas l'active X "Microsoft calendar control". Tu dois peut-être l'avoir sur ta machine. Il semble que DateJour soit un mot réservé de cet active X. Donc à tout hasard tu devrait essayer de renommer ton textbox DateJour avec un autre nom. Il y a peut-être un conflit lors de l'interprétation du code ?

Vraiment a tout hasard....
0
pilas31 Messages postés 1825 Date d'inscription   Statut Contributeur Dernière intervention   646
 
Bon, oublions mon post précédent c'est ésoterique !!!!
0
pilas31 Messages postés 1825 Date d'inscription   Statut Contributeur Dernière intervention   646
 
Bonsoir,

J'insiste, j'ai l'intuition que le problème vient du "Microsoft calendar control". Je l'ai installé celà a corrigé l'erreur que j'avais lors du lancement "Impossible de charger objet".

Chez moi tout fonctionne bien mais je te conseille de tester deux choses :

1/ initialise la date du calendrier en modifiant comme cela :
Private Sub UserForm_Initialize()
    Calendar2.Value = Now
    Me.DateJour = Date
    Me.natOperat.RowSource = "typeOper"
    Me.typeVir.RowSource = "typerVir2"
    Me.banqueOper.RowSource = "typebanque"
End Sub

2/ peut-être que tu as un problème avec l'active X du calendrier. Donc tente le chose suivante :
dans Démarrer/Excécuter tape la commande : regsvr32 mscal.ocx puis OK


3/ et si ça marche toujours pas je pense que ton mscal.ocx est endommagé alors tu peux le récuperer ici :
http://www.fontstuff.com et suivre la procédure d'install c'est ce que j'ai fait (j'ai excel 2003 sous XP) et donc chez moi ça marche.

A+

Cordialement,
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Petite rectification pour...
2/ peut-être que tu as un problème avec l'active X du calendrier. Donc tente le chose suivante :
dans Démarrer/Excécuter tape la commande : regsvr32 mscal.ocx puis OK

Sous vista ça ne marche que si ont est loggé en tant qu'administrateur>>
dans la ligne de commande taper cmd .. Ne pas taper ENTER.. Sur l'icône Cmd (plus haut) cliquer droit et ouvrir en tant qu'administrateur et dans la fenêtre dos taper la commande, alors c'est bon, sinon affiche erreur.
A+
0
micom59 Messages postés 71 Date d'inscription   Statut Membre Dernière intervention   1
 
Bonjour et merci Pilas et Lermitte pour vos réponses,

vous avez trouvé mon probleme!!

c'est en effet mon mscal qui était endommagé, après reinstallation de cleui-ci le formulaire remarche!

merci encore!

Mickaël.
0
pilas31 Messages postés 1825 Date d'inscription   Statut Contributeur Dernière intervention   646
 
Salut Micom et Lermite,

Je suis heureux car depuis le début j'avais un soupçon sur calendar. (comme vous pouvez le voir à l'heure de mon post) je me suis révéillé pour suggérer cette solution, mais je vois que Lermite est aussi intervenu trés tard ;) !

Bonne continuation

A+
0