Chronomètre en vba excel?
Je suis en train de configurer une base chronomètre pour le suivi du temps écoulé. Button1 devrait démarrer le chronomètre à 0, Bouton2 cesse de la regarder, et enregistre le nombre de minutes et de secondes qui se sont écoulées depuis la minuterie a commencé. J'ai les boutons déposée sur une feuille de calcul, et juste besoin d'un moyen de calculer le temps écoulé. Quelle serait la meilleure approche?
Voici le code que j'ai travaillé avec
Private Sub CommandButton1_Click()
startTime = Timer
End Sub
Private Sub CommandButton2_Click()
Dim finalTime As Single
finalTime = Timer - startTime
MsgBox Format(finalTime, "0.00")
End Sub
Le problème avec ce code, c'est qu'il affiche le temps écoulé seulement après que je clique sur le bouton 2. J'ai besoin d'un minuteur sur ma feuille excel.
- Pensez à mettre à jour l'écran de 10 fois par seconde?
Vous devez vous connecter pour publier un commentaire.
youtube
lien
myTime = myTime
àmyTime = Time
après le redémarrage msgboxSi vous avez besoin d'une précision, Excel est probablement pas l'endroit pour ce faire. Mais si assez proche est assez proche, alors voici comment j'allais le faire.
Dans un module standard:
Dans la feuille Sheet1 module de classe du
Lorsque vous cliquez sur Button1, gbStop est définie sur false, l'heure de début est enregistré dans une variable publique, et la UpdateTime procédure est planifiée pour s'exécuter 1 seconde plus tard.
Une seconde plus tard, UpdateTime s'exécute et la valeur de la cellule nommée rngTimer est modifiée pour afficher le temps écoulé entre Maintenant et le début enregistrées dans Button1_Click. Si gbStop est encore Faux, UpdateTime horaires de lui-même à courir à nouveau dans une autre seconde.
Finalement, vous appuyez sur le bouton 2, qui définit la variable publique gbStop de Vrai. La prochaine fois Updatetime s'exécute, il n'a pas de calendrier pour l'exécuter à nouveau.