![](https://codky.com/wp-content/uploads/2024/11/2672-1024x576.png)
En VBA (Visual Basic for Applications), la fonction `Timer` est utilisée pour obtenir le nombre de secondes écoulées depuis minuit. Vous pouvez l’utiliser pour mesurer le temps écoulé entre deux événements. Voici un exemple de la façon d’utiliser la fonction `Timer` dans un projet VBA pour mesurer le temps d’exécution d’un bloc de code :
Sub MesurerTempsExecution()
Dim debut As Double
Dim fin As Double
Dim duree As Double
' Enregistrer le temps de début
debut = Timer
' Bloc de code dont vous souhaitez mesurer la durée
Dim i As Long
Dim somme As Long
somme = 0
For i = 1 To 1000000
somme = somme + i
Next i
' Enregistrer le temps de fin
fin = Timer
' Calculer la durée en secondes
duree = fin - debut
' Afficher la durée d'exécution en secondes
MsgBox "Le temps d'exécution est: " & Format(duree, "0.00") & " secondes."
End Sub
Dans cet exemple :
- Nous utilisons la variable `debut` pour stocker le temps en secondes (depuis minuit) avant le démarrage du bloc de code.
- Après l’exécution du bloc de code, nous stockons le temps dans la variable `fin`.
- La durée est calculée en soustrayant `debut` de `fin`.
- Enfin, nous affichons la durée d’exécution dans une boîte de message avec deux décimales.
Il est important de noter que le `Timer` retourne un nombre de type `Single`, et il peut rencontrer des problèmes de précision si l’on mesure des durées très courtes dues à son retour en secondes. Pour des mesures de temps plus précises, surtout très courtes, des techniques alternatives comme l’utilisation de l’API Windows peuvent être nécessaires.