XL 2010 Créer une textbox animée

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 !

jaggerjack

XLDnaute Nouveau
Bonjour,

Je cherches à appuyer sur un bouton d'un premier userform (contenant une barre de progression)qui ferait évoluer la barre de progression et qui ouvrirait un second userform qui lui afficherait un message du genre veuillez patienter avec 3 points de suspension qui apparaitraient jusqu'à être au nombre de 3 et disparaitraient ensuite pour recommencer.

Actuellement je suis obligé de cacher le userform avec la barre de progression pour avoir le second userform affiché et il n'incrémente les points seulement quand le fichier excel n'est pas actif.

Voici le code :

Private Sub CommandButton1_Click()
UserForm1.Hide
UserForm2.Show vbModeless
Dim j As Integer

While UserForm1.TextBox1.Width <> 192
For j = 1 To 6
UserForm2.TextBox1.Value = "Please wait"
Application.Wait (Now + TimeValue("0:00:01"))
UserForm2.TextBox1.Value = "Please wait."
Application.Wait (Now + TimeValue("0:00:01"))
UserForm2.TextBox1.Value = "Please wait.."
Application.Wait (Now + TimeValue("0:00:01"))
UserForm2.TextBox1.Value = "Please wait..."
Application.Wait (Now + TimeValue("0:00:01"))
UserForm1.TextBox1.Width = UserForm1.TextBox1.Width + 32
Next j
Wend
End Sub

Je vous joint également le fichier au cas ou

Merci d'avance
 

Pièces jointes

Bonjour.
Je ne comprends pas trop la logique de ce que vous essayez de faire.
Mais si ça vous intéresse, j'ai une excellente barre de progression utilisable partout où on connait le nombres de passages prévus dans une boucle, voire un nombre d'étapes dans un code qui descend tout droit. C'est un UserForm non modal piloté essentiellement par deux procédures d'un module standard. Il faudrait donc cacher un UserForm depuis lequel on voudrait les utiliser s'il était, lui, modal.
 
Concrètement ce que j'essaye de faire c'est d'afficher un message "please wait..." dans un premier userform qui dépendrais de la valeur du width de la barre de progression du second userform.

Donc pour le code utilisé, je dis que tant que la barre de progression n'a pas atteint un width de 192, alors on affiche différents messages dans la label (avec plus ou moins de points pour donner une impression d'animation) et ensuite incrémenter le width par 32 (la boucle s'arrêtera donc dès que le width aura atteint les 192 => 32 * 6 = 192 donc 6 itérations.

Mon code fonctionne plus ou moins maintenant mais le label ne veut pas s'actualiser tant que le fichier Excel n'est pas en arrière plan ( donc tant que je n'ai pas cliqué ailleurs que le fichier excel).

Je dois donc trouver un moyen de rafraichir/actualiser le label ou le userform contenant le label afin d'afficher chaque texte de manière fluide pour pouvoir donner cette impression d'animation.

Ex:

Please wait ensuite Please wait. ensuite Please wait.. ensuite Please wait... et on recommence pour la prochaine itération jusqu'à arriver à un width de 192.

Je me répète beaucoup mais j'espère que vous avez mieux compris mon problème.
 
Merci pour votre document mais malheureusement je n'y trouves pas mon bonheur.

Je vais vraiment simplifier à fond cette fois :

Je veux que le label de mon userform affiche "please wait..." de manière animée avec les points qui apparaissent petit à petit et dès que les trois points sont apparus, qu'ils disparaissent ensuite pour recommencer (Un truc que l'on voit assez souvent lors de chargements). Je saurais me débrouiller ensuite pour adapter le reste.

Merci d'avance pour votre aide
 
- 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

Discussions similaires

Réponses
0
Affichages
964
Réponses
22
Affichages
4 K
L
Réponses
2
Affichages
1 K
L
Retour