Problèmes avec un UserForm

demongin

XLDnaute Nouveau
Bonjour le Forum,

J'ai deux problèmes à vous exposer qui tourne autour d'un USF :

1- J'ai créé un USF contenant un texte et un Gif animé pour faire patienter l'utilisateur pendant l'exécution de la macro.
Si je le lance d'un module spécifique où il est appelé, tout fonctionne normalement. En revanche, lorsque je l'implante dans mon code, la fenêtre de l'USF apparaît, mais elle reste vide, ni texte, ni Gif animé !!
Derrière, les pages défiles correctement selon les opérations commandées par la macro (qui est d'ailleurs ralenti, sans doute par le Gif Animé 'invisible').
J'ai essayé d'utiliser l'instruction 'Application.ScreenUpdating = False' pour soulager le rafraichissement de l'affichage, mais bien évidemment elle supprime aussi l'affichage de l'USF.
Avez-vous une idée sur le problème ? :confused:

2- Depuis que j'ai implanté ce USF, une erreur se produit quasi systématiquement : Erreur entrée/sortie périphérique. Résultat, obliger de quitter le classeur et à la réouverture, le message réapparaît puis Excel plante. :mad:
J'ai fait quelque recherches et j'ai trouvé cet article sur le site de Microsoft ("Périphérique d'E / S erreur" l'enregistrement de feuille de module comme code de base) qui parle de chemin trop long qui devrait être inférieur à 127 caractères. :eek:
Cela concerne Excel 95 et 5.0, hors je suis sous Excel 2007 et j'enregistre en mode compatibilité 97-2003.
En réduisant la longueur du chemin initial où se trouve le classeur, le soucis semble disparaître. Ce qui est très étrange, c'est que cela n'avait aucune influence avant que j'ajoute l'USF ! :eek:
Comme ce classeur est destiné à d'autres, je ne maîtrise pas la longueur du chemin où ils placeront leur fichier et c'est donc un problème majeur.
J'espère que vous pourrez m'aider à me sortir de ce problème.

Merci par avance,
PS : mon classeur est très lourd 1,6Mo donc je le transmettrait par mail si nécessaire. J'afficherai ici les codes que vous souhaiterez consulter.
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Problèmes avec un UserForm

Bonjour Demongin

au lieu de mettre un gif animé pour faire passer le temps, pourquoi ne mettrais-tu pas une ProgressBar ( comme le "petit train" qui défile à l'ouverture de Windows)

bonne journée
 

demongin

XLDnaute Nouveau
Re : Problèmes avec un UserForm

Bonjour phlaurent55,

A vrai dire, je ne sais pas si tu plaisantes, mais je n'ai à priori jamais vue de 'petit train' qui défile à l'ouverture de Windows.

La barre de progression, c'est ce que je voulais faire initialement, mais je n'y suis pas arrivé, sans aucun doute par manque de compétence et aussi par le fait que mon code n'est pas une boucle (il enchaîne les incrémentations et copier/coller sur une cinquantaine de page) et que je ne sais pas estimé le temps de la procédure, car elle dépend du pc qui l'exécutera.

D'autres idées...? ;)
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Problèmes avec un UserForm

Re,
A vrai dire, je ne sais pas si tu plaisantes, mais je n'ai à priori jamais vue de 'petit train' qui défile à l'ouverture de Windows.
Je ne plaisantais pas

Maintenant je plaisante........................... tu travailles peut-être avec Linux

Puisque ta procédure est longue et sans boucle, tu dois à quelques endroit de ton code mettre une ligne qui fera varier la progressbar
Il te faudra procéder par tâtonnements successifs : je l'ai déjà fait............................... mais il faut au préalable aller chez l'épicier du coin et ramener quelques litres de Patience

bonne journée
Philippe
 

demongin

XLDnaute Nouveau
Re : Problèmes avec un UserForm

Re,

j'ai vu cette histoire de ligne, mais je n'ai pas compris concrètement comment faire alors j'ai laissé tombé. Pour la patience, j'en ai, j'ai passé presque 3 jours pour mettre en place cette USF et cela me ferait ch--r de l'envoyer à la poubelle maintenant d'autant que je suis maintenant pris par le temps.
Il faut absolument que j'avance...
 

ledzepfred

XLDnaute Impliqué
Re : Problèmes avec un UserForm

Bonsoir,

pourquoi ne pas afficher un petit USF modal qui n'empêche pas l'execution du code de ta macro et qui invite l'utilisateur à patienter pendant la mise à jour des données?

voir ce petit exemple

A+
 

Pièces jointes

  • Classeur1.xls
    27.5 KB · Affichages: 91
  • Classeur1.xls
    27.5 KB · Affichages: 92
  • Classeur1.xls
    27.5 KB · Affichages: 93
Dernière édition:

Discussions similaires

Réponses
11
Affichages
535

Statistiques des forums

Discussions
312 206
Messages
2 086 221
Membres
103 158
dernier inscrit
laufin