Remplacement Sablier par un MSGBOX

jorisphi

XLDnaute Occasionnel
Bonjour à tous

Lors d'un long traitement d'un fichier, je ne sais pas si c'est possible de remplacer le "Sablier"" par un MSGX "Travail encours"

Merci d'avance
Cordialement
Jorisphi
 

mromain

XLDnaute Barbatruc
Re : Remplacement Sablier par un MSGBOX

bonjour jorisphi,

Après avoir créé un UserForm avec un Label ("Travail encours"), exécuter ce code :
Code:
Private Sub test()
    Application.Wait (Now + TimeValue("00:00:05"))
End Sub


Sub test2()
Dim i As Long, myUsf As New UserForm1
    myUsf.Show 0
    test
    Unload myUsf
End Sub

a+
 

Papou-net

XLDnaute Barbatruc
Re : Remplacement Sablier par un MSGBOX

Bonjour Jorisphi,

Une méthode simple pour celà :

Tu crées une zone de texte (colorée de préférence) et affichant ton message et tu règles sa propriété Visible à False.

Au début de ta macro, tu la passes en Visible=True, et à la fin de ta macro, tu la remets à False.

Il est préférable pour celà d'utiliser un Label depuis la barre d'outils Contrôles.

Espérant avoir répondu.

Cordialement.

(Bonjour mromain)
 
Dernière édition:

jorisphi

XLDnaute Occasionnel
Re : Remplacement Sablier par un MSGBOX

Bonjour Papounet,
Grand merci, je vais tester
Cordialement
Jorisphi



Bonjour Jorisphi,

Une méthode simple pour celà :

Tu crées une zone de texte (colorée de préférence) et affichant ton message et tu règles sa propriété Visible à False.

Au début de ta macro, tu la passes en Visible=True, et à la fin de ta macro, tu la remets à False.

Il est préférable pour celà d'utiliser un Label depuis la barre d'outils Contrôles.

Espérant avoir répondu.

Cordialement.

(Bonjour mromain)
 

jorisphi

XLDnaute Occasionnel
Re : Remplacement Sablier par un MSGBOX

Bonjour mromain
Encore merci pour ton aide. Toujours là pour aider

On croit que l'on est clair dans sa demande, mais on ne l'est jamais assez.
Excuse-moi encore
Je parlais du sablier qui tourne lorsque qu'une formulation Excel est excécutée
( =calcul matricielle de consolidation de feuilles dans excel qui prend du temps d'attente)

Est-ce toujours possible ?

Très cordialment
Jorisphi

bonjour jorisphi,

Après avoir créé un UserForm avec un Label ("Travail encours"), exécuter ce code :
Code:
Private Sub test()
    Application.Wait (Now + TimeValue("00:00:05"))
End Sub


Sub test2()
Dim i As Long, myUsf As New UserForm1
    myUsf.Show 0
    test
    Unload myUsf
End Sub

a+
 

mromain

XLDnaute Barbatruc
Re : Remplacement Sablier par un MSGBOX

re bonjour,
bonjour Papou-net,

Je t'avoue que ça je ne sais pas faire (j'aurais même tendance à penser que c'est impossible). Par contre, on peut facilement afficher une MsgBox à la fin du calcul (avec l'évènement Calculate).

Une autre solution, si le classeur est vraiment trop lourd, serait de désactiver le calcul automatique et de créer un bouton "Calculer" (qui permettra à l'utilisateur de mettre à jour toutes les formules). Avec une solution de ce type, on peut adapter une des deux solutions citées précédemment.

a+
 

jorisphi

XLDnaute Occasionnel
Re : Remplacement Sablier par un MSGBOX

Re-Bonjour mromain

Grand merci pour ta réponse
Ta solution de désactiver le calcul automatique est très judicieuse
L'idée de placer un bouton "Calculer" avec un MSGBox est aussi très interessante . Je n'y avais pas pensé.

Je crois que vais suivre ton idée
A bientôt
Et Grand MERCI
Cordialement
Jorisphi
 

Discussions similaires

Réponses
26
Affichages
515
Réponses
8
Affichages
439

Statistiques des forums

Discussions
312 520
Messages
2 089 285
Membres
104 083
dernier inscrit
hecko