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 :

Userform d'attente pendant traitement [XL-2010]


Sujet :

Macros et VBA Excel

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite Avatar de issoram
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2009
    Messages
    665
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 665
    Par défaut Userform d'attente pendant traitement
    Bonjour,

    Malgré les différents posts sur le sujet je n'arrive pas à mes fins.... je relance donc une discussion
    J'ai créé un Userform d'attente tout simple dont l'aspect change toutes les 0.5 s. Voici le code
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    Option Explicit
     
    Private Sub UserForm_Initialize()
        animerUF_Attente = True
    End Sub
     
     
    Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
        If CloseMode = vbFormControlMenu Then Cancel = True
    End Sub
     
    Sub Animation()
     
        Me.Label1.BackColor = RGB(255, 255, 255)
        Me.Label2.BackColor = RGB(255, 255, 255)
        Me.Label3.BackColor = RGB(255, 255, 255)
     
        Dim t0 As Single, t As Single, tt As Single, delta As Single, i As Long
        delta = 0.5: tt = 0
        t0 = Timer()
     
        While animerUF_Attente
            t = Timer() - t0
            If t - tt >= delta Then
                tt = t
                Select Case i Mod 3
                Case 0
                    Me.Label1.BackColor = RGB(0, 255, 0)
                    Me.Label2.BackColor = RGB(255, 255, 255)
                    Me.Label3.BackColor = RGB(255, 255, 255)
                Case 1
                    Me.Label2.BackColor = RGB(0, 255, 0)
                Case 2
                    Me.Label3.BackColor = RGB(0, 255, 0)
                End Select
                Me.Repaint
                i = i + 1
            End If
            DoEvents
        Wend
     
    End Sub
    j'aimerais que ce UserForm s'affiche parallèlement à des procédures de traitement (assez longues) et là je coince... Par exemple avec cette sub toute bête:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public animerUF_Attente As Boolean
     
    'Ce que je souhaiterais faire: afficher le UF_attente pendant que la sub Calcul tourne
    Sub Test()
        UF_attente.Show 0
        UF_attente.Animation
        Calcul     'je ne parviens pas à passer à cette étape (thread obligatoire ?) 
    End Sub
     
    Sub Calcul()
        Application.Wait (Now + TimeValue("0:00:10"))
        Debug.Print "ok"
    End Sub
    J'espère que vous pourrez m'aider. Je joins un classeur de test au cas où...

    Merci d'avance et bonne soirée à ceux qui liront jusque là.
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. [XL-2003] Problème d'affichage avec un UserForm d'attente pendant une macro ?
    Par [ZiP] dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/02/2010, 11h28
  2. Message d'attente pendant traitement côté serveur
    Par bouliz dans le forum ASP.NET
    Réponses: 13
    Dernier message: 09/07/2007, 11h55
  3. Afficher une fenetre d'attente pendant un long traitement (Swing)
    Par JavaBienOuMal dans le forum EDT/SwingWorker
    Réponses: 5
    Dernier message: 15/06/2007, 14h13
  4. [Système] page d'attente pendant traitement system
    Par Squyrrel dans le forum Langage
    Réponses: 1
    Dernier message: 24/03/2006, 22h09
  5. [JProgressBar] Afficher barre d'attente pendant traitement
    Par Regis.C dans le forum Composants
    Réponses: 10
    Dernier message: 02/09/2005, 16h43

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