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 :

Message d'attente au cours d'execution de macros [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut Message d'attente au cours d'execution de macros
    Bonsoir,
    j'ai un classeur avec une trentaine de feuilles
    j'ai un ensemble de macro qui synchronisent ces feuilles (mise en page) selon le trimestre choisi.
    cette tâche nécessite presque 2 minutes.
    j'ai ajouté un message par l'instruction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.StatusBar ="message d'attente"
    Pour une meilleure interface, je désire afficher un userform comportant mon message d'attente qui se fermera à la fin du temps nécessaire à la synchronisation
    j'ai essayé cela mais ça reste bloqué tant que l'userform n'est pas fermé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Public Sub SYNCHRO(k As Integer)
     
    USF.show
    doEvents
        Sheets("Config").Cells(5, 2).Value = k
        Sheets("c70").Cells(1, 1).Value = k
        Sheets("MDF").Cells(1, 1).Value = k
        Sheets("LDSP").Cells(1, 1).Value = k
        Sheets("DVER").Cells(1, 1).Value = k
        Form26 k
        Form20 k
        Form70
        FormMPZ Sheets("MDF"), Sheets("Config")
        FormMPZ Sheets("LDSP"), Sheets("Config")
        FormMPZ Sheets("DVER"), Sheets("Config")
        Form0102 k
    USF.hide
    End Sub
    S'il y a une variante à ma question?
    merci

  2. #2
    Membre chevronné
    Inscrit en
    Décembre 2003
    Messages
    434
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 434
    Par défaut
    Salut,

    Essai ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Public Sub SYNCHRO(k As Integer)
     
    USF.show 0 ' on rend la form non modal ce qui veut dire qu'on garde la main pendant son affichage pour faire autre chose
        Sheets("Config").Cells(5, 2).Value = k
        Sheets("c70").Cells(1, 1).Value = k
        Sheets("MDF").Cells(1, 1).Value = k
        Sheets("LDSP").Cells(1, 1).Value = k
        Sheets("DVER").Cells(1, 1).Value = k
        Form26 k
        Form20 k
        Form70
        FormMPZ Sheets("MDF"), Sheets("Config")
        FormMPZ Sheets("LDSP"), Sheets("Config")
        FormMPZ Sheets("DVER"), Sheets("Config")
        Form0102 k
    Unload USF
    End Sub
    ++
    Minick

  3. #3
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Bonjour,
    A-tu essayé cet exemple
    A+
    Edit : Correction.. je dormais encore
    Bonjour Leti

  4. #4
    Membre Expert Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Par défaut
    bonjour mercatog Minick l'ami Louis le forum
    une autre possibilitee tu mets ton code dans l userform

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Private Sub UserForm_Initialize()
    Repaint
     Sheets("Config").Cells(5, 2).Value = k
        Sheets("c70").Cells(1, 1).Value = k
        Sheets("MDF").Cells(1, 1).Value = k
        Sheets("LDSP").Cells(1, 1).Value = k
        Sheets("DVER").Cells(1, 1).Value = k
        Form26 k
        Form20 k
        Form70
        FormMPZ Sheets("MDF"), Sheets("Config")
        FormMPZ Sheets("LDSP"), Sheets("Config")
        FormMPZ Sheets("DVER"), Sheets("Config")
        Form0102 k
    Unload Me
    End Sub

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub Macro1()
    userform1.Show
    End Sub

  5. #5
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Merci Laetitia, Le Forestier et Minick,
    Effectivement, en mode modal ça passe
    sauf que l'USF apparait sans le message souhaité (USF blanc quoi!)
    dans mon USF j'ai un label où j'ai écris mon message d'attente!
    Merci encore

  6. #6
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Beh.. le code que Laetitia te montre doit être mis dans le UF où tu a ton label avec le message d'attente !! et pas dans un autre.
    Rectification, pas mettre le code dans Initialize mais dans Activate.
    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] Afficher un message d'attente pendant l'exécution d'une macro
    Par demongin dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 07/06/2009, 20h54
  2. Affichage d'un message d'attente pendant l'exécution d'une macro
    Par shadok6 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 08/10/2008, 14h49
  3. Message d'attente durant execution macro
    Par Calimero06 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 28/04/2008, 17h41
  4. [Javascript] message d'attente lors de l'exécution d'un long script
    Par FraktaL dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 10/06/2006, 16h55
  5. Réponses: 8
    Dernier message: 25/11/2005, 18h38

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