IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Afficher une barre de progression lors de l'exécution d'une macro d'un autre userform


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Comptable
    Inscrit en
    Août 2018
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Comptable

    Informations forums :
    Inscription : Août 2018
    Messages : 30
    Par défaut Afficher une barre de progression lors de l'exécution d'une macro d'un autre userform
    Bonjour, je me permets de vous soumettre encore un de mes soucis

    Je suis en train d'élaborer une application de gestion de factures et devis qu'il faudra envoyer par mail et j'ai créé un formulaire

    à cet effet qui marche super bien? Sauf que l'exécution du code prend plus de temps que je ne l'espérait compte tenue des configurations

    serveurs.


    Alors j'ai pensé à une barre de progression qui pourrait indiquer à l'utilisateur que le code s'exécute en arrière plan au lieu d'avoir au

    contraire l'userform figé pendant plusieurs dizaines de secondes comme si la macro avait planté. Pour faire simple, j'ai créé en suivant

    des tutoriels, une barre de progression simple sans affichage du niveau d'exécution de la macro (car sincèrement, je ne saurait vraiment

    le faire). Les deux userforms (celui du mail et celui de la progression) s'exécutent individuellement sans problème.


    Mais là je viens vous solliciter voir comment les faire fonctionner simultanément car j'y arrive pas après plus de 24heures d'essaie. Ce que

    je souhaite c'est faire apparaitre l'userform de la barre de progression lors du lancement de la procédure d'envoie du mail, et le refermer

    juste après que l'envoie ait été effectuée avec succès!


    Ou s'il y a un meilleur moyen, je suis ouvert à toutes vos propositions!
    Nom : MAIL.JPG
Affichages : 160
Taille : 1,16 MoNom : PROGESSION.JPG
Affichages : 149
Taille : 559,1 Ko

    NB: Pour raisons de confidentialité, j'aie enlevé les paramètres de configurations serveurs

  2. #2
    Membre émérite
    Homme Profil pro
    Développeur .net - Office - Quadiant
    Inscrit en
    Février 2020
    Messages
    622
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Développeur .net - Office - Quadiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2020
    Messages : 622
    Par défaut
    Bonjour,

    Je ne pense pas que ce soit possible, car Excel comme toutes les applications Office qui utilisent VBA ne sont pas Multitread, donc tu ne peux lancer qu'une opération à la fois.

    Quand on utilise une barre de progression, on l'alimente en l'incrémentant dans une boucle lors du traitement et en général sur le même formulaire.

    Pour ce que tu fais à part un sablier "Application.Cursor = xlWait" je ne vois pas ce que tu peux faire d'autre.

    ONTAYG

  3. #3
    Membre averti
    Homme Profil pro
    Comptable
    Inscrit en
    Août 2018
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Comptable

    Informations forums :
    Inscription : Août 2018
    Messages : 30
    Par défaut
    Merci chère ami pour votre apport. Au moins je suis convaincu que je n'étais pas
    idiot après tellement d'essaies non fructueux! Comme vous le dites il est claire
    que c'est la technique que j'ai retenue qui n'est pas la bonne.

    Toutefois, l'alternative que vous suggérez ne me semble pas convenir à ce que
    je souhaite faire. Au mieux j'aimerais afficher un message d'attente du genre
    "Exécution en cours, veuillez patienter s'il vous plait...".Je suis en train de
    penser à la méthode Application.statusBarr, mais je ne m'y connais pas
    vraiment.

    Quelqu'un saurait-il m'aider dans ce sens à l'implémenter dans mon projet?

    Bien à vous tous!

  4. #4
    Membre émérite
    Homme Profil pro
    Développeur .net - Office - Quadiant
    Inscrit en
    Février 2020
    Messages
    622
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Développeur .net - Office - Quadiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2020
    Messages : 622
    Par défaut
    Bonjour,

    Ton code n'exécutant pas une boucle, je pense que seul le sablier peut convenir avec un petit message dans l'Userform pour indiquer le traitement en cours.

    ONTAYG

  5. #5
    Membre Expert Avatar de Transitoire
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Décembre 2017
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Décembre 2017
    Messages : 728
    Par défaut
    Bonjour, pourquoi n'essayez vous pas d'inclure un message(Label), exemple: "léger temps d'attente, patience!" directement dans le UserForm du mail. Vous pouvez le placer dans le bas du UF. Avec à l'ouverture du UF le label en Visible = False puis au lancement du transfert en Visible = True. Vous n'aurez plus qu'un seul UF avec le message bien apparent.
    C'est d'ailleurs ce que propose Ontayg.
    Cordialement

  6. #6
    Membre averti
    Homme Profil pro
    Comptable
    Inscrit en
    Août 2018
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Comptable

    Informations forums :
    Inscription : Août 2018
    Messages : 30
    Par défaut
    Okay Transitoire,

    Je vais essayer d'appliquer ta méthode aussi voir.
    Merci bien!

Discussions similaires

  1. [Batch] Barre de progression lors d'un téléchargement
    Par Pyroman_Goliath dans le forum Scripts/Batch
    Réponses: 20
    Dernier message: 21/11/2013, 11h27
  2. Barre de progression lors d'un INSERT
    Par mehdiyou1985 dans le forum IHM
    Réponses: 5
    Dernier message: 05/12/2012, 16h57
  3. Barre de progression lors d'un upload
    Par CherInfo dans le forum Interfaces Graphiques en Java
    Réponses: 2
    Dernier message: 18/04/2011, 11h26
  4. Afficher une barre de progression lors d'un téléchargement
    Par khayyam90 dans le forum Contribuez
    Réponses: 0
    Dernier message: 28/12/2010, 20h29
  5. Réponses: 4
    Dernier message: 11/03/2010, 17h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo