Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Format label compte à rebour

  • Initiateur de la discussion Initiateur de la discussion Temjeh
  • 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 !

Temjeh

XLDnaute Accro
Bonjour et merci d'avance
J'ai ceci qui fonctionne.

Dans cell je met une valeur example 120.
Le label affiche le countdown jusqu'à 0.

Le problème est que j'aimerais le format minute et seconde.

Code:
For I = ActiveCell.Offset(0, 3).Value To 0 Step -1

        Application.Wait Now + TimeValue("00:00:01")
        Label1.Caption = I
 
    Next

Pas 120 ...119 ...118
Mais 1:59 ...1:58 ...1:57

Aussi avec ce code une fois démarré, impossible de l'arrêter? (bouton impossible)

Merci de votre aide
 
Dernière édition:
Re : Format label compte à rebour

Merci beaucoup

C'est très bon
Sauf que il affiche les 100ème et non les 60ème

200 (min) il met 1:99 ...1:98 ...1:97

Pour le stop, le ECHAP fonctionne. Autre solution?

Temjeh
 
Dernière édition:
Re : Format label compte à rebour

Bonsour®

VB:
Public Marche As Boolean

Sub Ellipse1_Clic()
Dim fin As Double
marche = Not marche
fin = Now + ([macell ] * TimeValue("00:00:01"))
With ActiveSheet.Label21
        While fin >= Now And marche = True
                .ForeColor = vbGreen
                '.Caption = Format(fin - Now, "mm:ss") ' ????? affichage 12:xx
                .Caption = Minute(fin - Now) & ":" & Format(Second(fin - Now), "00")
                DoEvents
        Wend
        .ForeColor = vbRed
End With
End Sub


NB:
ce code , aussi bien que le précédent (application.wait)
interdit l'exécution d'autres actions Excel
pour contourner ce handicap, il faut passer par des procédures ON TIME avec start et stop
 

Pièces jointes

  • Capture.JPG
    30.7 KB · Affichages: 87
  • Capture.JPG
    30.7 KB · Affichages: 88
Dernière édition:
Re : Format label compte à rebour

Bonjour Temjeh, xhudi69, Modeste geedee,

Code:
Sub Compte_à_rebours()
Static arret As Boolean
Dim i&, t#
If arret Then End
arret = True
For i = ActiveCell.Offset(0, 3) To 0 Step -1
  Label1 = Int(i / 60) & ":" & Format(i - 60 * Int(i / 60), "00")
  t = Timer + 1 'temporisation 1 seconde
  While Timer < t: DoEvents: Wend
Next
arret = False
End Sub
On peut affecter la macro à un bouton.

Une fois lancée, il suffit de la relancer pour arrêter le compte à rebours.

Bonne journée.
 
Dernière édition:
Re : Format label compte à rebour

Re,

Si la macro est dans un UserForm l'instruction End le ferme puisqu'elle arrête toutes les macros en cours.

On peut évidemment éviter cette instruction :

Code:
Sub Compte_à_rebours()
Static marche As Boolean
Dim i&, t#
If marche Then marche = False: Exit Sub
marche = True
For i = ActiveCell.Offset(0, 3) To 0 Step -1
  Label1 = Int(i / 60) & ":" & Format(i - 60 * Int(i / 60), "00")
  t = Timer + 1 'temporisation 1 seconde
  While Timer < t: DoEvents: Wend
  If Not marche Then Exit For
Next
marche = False
End Sub
A+
 
- 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

M
Réponses
11
Affichages
2 K
Melidan2006
M
Réponses
9
Affichages
2 K
L
  • Question Question
XL 2013 Aide VBA
Réponses
4
Affichages
1 K
LAC736
L
A
Réponses
32
Affichages
10 K
A
A
Réponses
7
Affichages
12 K
Aquhydro
A
A
Réponses
0
Affichages
12 K
Aquhydro
A
B
  • Question Question
Réponses
10
Affichages
3 K
Benwill153
B
K
Réponses
0
Affichages
1 K
kolitchev
K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…