Rafraichir heure USF

  • Initiateur de la discussion Initiateur de la discussion Christian
  • Date de début Date de début

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 !

C

Christian

Guest
Bonjour au forum,

J`essaie de rafraichir un textbox dans mon USF toutes les 10 sec, mais mon code ne marche pas. Il n`y a pas de rafraichissement....

Code:
Option Explicit
Dim HeureProchainAppel1 As Double

Private Sub UserForm_Initialize()
HorlogeEnA11
End Sub

Public Sub HorlogeEnA11()
TextBox1.Value = Format(Now, 'HH:MM:SS')
'Nouveau paramétrage de OnTime
HeureProchainAppel1 = Now + TimeValue('00:00:10')
Application.OnTime HeureProchainAppel1, 'HorlogeEnA11'
End Sub

Si quelqu`un a une idee, merci d`avance.. 🙂
 
En fait, il y a 3 fois rien à changer...essaie de mettre un truc du style :

Public Sub HorlogeEnA11()
UserForm1.TextBox1.Enabled = True
UserForm1.TextBox1.Value = Format(Now, 'HH:MM:SS')
UserForm1.TextBox1.Enabled = False
'Nouveau paramétrage de OnTime
HeureProchainAppel1 = Now + TimeValue('00:00:02')
Application.OnTime HeureProchainAppel1, 'HorlogeEnA11'
End Sub

DANS UN MODULE (sinon ca marche pas).

Ensuite dans le code de ton USF tu appelles HorlogeEnA11.
NB : Enabled sert juste à ne pas modifier la textbox.

Tchô.
Bonne journée. 😉
 
Bonjour Christian et Maxinus,

Pour rafraîchir la textbox, il faut créer une macro évènementielle. Chaque fois que l'heure change dans la textbox, la macro relance la macro de temporisation. C'est du style :

Private Sub TextBox1_Change()
HorlogeEnA11
End Sub

Un petit problème va se poser cependant ! Comment arrêter le système une fois qu'il est lancé ? Vas consulter l'aide sur la fonction ontime, il y a des exemples pour arrêter la procédure.

Cordialement

Bernard

Message édité par: CBernardT, à: 10/08/2005 10:54
 
bonjour christian , le forum je procede comme cela dans un module Option Explicit
Dim Lheure As Double
Sub LancerTimer()
If useform1.Visible = False Then Exit Sub
Application.OnTime Now + TimeSerial(0, 0, 1), 'ExecutionTimer'
End Sub
Sub ArretTimer()
If useform1.Visible = False Then Exit Sub
On Error Resume Next
Application.OnTime Lheure, 'ExecutionTimer', , False
End Sub
Sub ExecutionTimer()
If useform1.Visible = False Then Exit Sub
Dim i As Byte
Sheets(1).Range('i13').Value = Now()
Lheure = Now + TimeSerial(0, 0, 10) '10secondes
Application.OnTime Lheure, 'ExecutionTimer'
End Sub ............................................................................... code usf Private Sub TextBox1_Change()
TextBox1.Value = Format(TextBox1.Value, 'h:mm:ss')
End Sub ..............Private Sub UserForm_Initialize()
TextBox1.Value = Sheets('FEUIL1').Range('i13').Value End Sub......Private Sub UserForm_Activate()
Call LancerTimer
End Sub
Private Sub CommandButton5_Click()
Call ArretTimer
Unload Me
End Sub
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

P
Réponses
6
Affichages
1 K
pesca37
P
J
Réponses
0
Affichages
847
J
J
Réponses
6
Affichages
2 K
krimoines
K
D
Réponses
25
Affichages
4 K
Retour