Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Messages déroulement macro

  • Initiateur de la discussion Initiateur de la discussion Gael
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Gael

XLDnaute Barbatruc
Bonjour à tous,

Dans une application, j'ai ajouté une macro permettant d'enchaîner des traitements à la suite les uns des autres.

Comme il s'agit de requêtes vers des bases de données de systèmes centraux, le temps d'excécution est de l'ordre de plusieurs minutes pour l'ensemble des requêtes.

Je voudrais informer l'utilisateur pendant le déroulement de la procédure par exemple:

Phase 1 Recherche des articles...

puis:

Phase 1 Recherche des articles...OK
Phase 2 Statistiques de ventes...

puis:

Phase 1 Recherche des articles...OK
Phase 2 Statistiques de ventes...OK
Phase 3 Synthèse des résultats...

etc... avec à la fin du dernier traitement un bouton OK pour que l'utilisateur puisse vérifier la séquence s'il s'est absenté pendant le déroulement.

J'ai essayé avec Msgbox mais chaque message supprime le précédent et il faut cliquer sur OK.

Que me conseillez-vous.

Merci d'avance.

@+

Gael
 
Bonjour gael, re pascal, re le forum

en pièce jointe, une mise en application des bonnes idées de pascal.

salut
[file name=Classeur3_20050913164824.zip size=7742]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur3_20050913164824.zip[/file]
 

Pièces jointes

Bonjour Pascal, Bonjour hervé,

Merci de vos réponses.

Comme je ne sais pas comment créer un affichage non modal pour un userform j'ai regardé ton exemple, Hervé, mais je me demande si tu ne t'es pas trompé de fichier dans ton envoi car je ne comprends pas le résultat par rapport à la demande.

@+

Gael
 
Bonsoir Gael, Pascal76, Hervé, le Forum.

Si je peux me permettre une simple suggestion... pourquoi ne pas utiliser simplement la Barre d'Etat d'Excel ?

Tu pourrais faire par exemple :
Cordialement,
 
Bonjour a tous (la liste commence a être longue) 🙂

Pour reprendre ce que Pascal disait:
En utilisant un userform modeless, le code continue de s'exécuter et n'attent pas de réponse du userform. Il peut donc resté affiché.

La façon de changer le type de userform de Modal a Modeless, tu va dans les propriété du userform et a la méthode 'ShowModal', tu indique False à la place.

Combiné avec une procédure comme celle-ci:



Tu pourra je crois accomplir ce que tu veux.

[file name=Userform_Modeless.zip size=7272]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Userform_Modeless.zip[/file]
 

Pièces jointes

Bonsoir à tous,

Tout d'abord un grand merci pour votre aide.

Les solutions d'Hervé et Mydearfriend fonctionnent parfaitement; comme elles sont compatibles, j'ai laissé les deux et adapté le code et le userform pour gérer 5 phases de traitements.

Grace à Pascal et Philippe, j'ai compris la différence entre les types 'Modal' et 'Modeless'.

Après avoir passé beaucoup de temps à aider des utilisateurs, c'est vraiment agréable d'être aidé à son tour; mon appliction est presque finalisée grâce à vous.

Finalement, le VBA a aussi son charme et je vais peut-être me laisser tenter par le coté obscur de la force d'ici quelques semaines.

Merci encore.

@+

Gael
 
re

Excuse moi, mais j'ai oublié de dire que les Userform Modeless ne sont pas directement compatible avec Excel 97. Il faut utilisé des Fonctions API pour faire le tour de magie.

Si tu en veux plus, je te donnerai l'info !
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…