IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Temps d'exécution macro en millisecondes


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    1 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 1 150
    Par défaut Temps d'exécution macro en millisecondes
    Bonjour, je cherche à chronométrer le déroulement d'une boucle en millisecondes mais ne trouve rien sur internet pour y parvenir.

    La solution qui devrait apparemment aller serait l'utilisation de Timer en début de code puis "Timer2 - Timer" juste après mon For avec Format((Timer2 - Timer) / 86400, "hh:mm:ss,sss") or ceci me retourne systématiquement 00:00:00,000, je tente: Format....hh:mm:ss,ms et je récupère systématiquement 00:00:01,121?????

    Si quelqu'un peut me dépanner, merci beaucoup

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub test()
       Dim deb As Double, fin As Double
       deb = Timer * 1000#
             .... Procédure à chronométrer ....
       fin = Timer * 1000#
       Debug.Print fin - deb
    End Sub

  3. #3
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Bonjour,

    Vu, Menhir
    Une question pour une autre manière de procéder.

    D'après les hypothèses de notre ami.

    Si l'on considère la procédure

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub essai()
     
    Dim T As Single
    T = Timer
    'la procédure
     
    Dim strdurée As String
    strdurée = Format(Timer - T, "00:00:00.00")
     
    End Sub
    Trivialement.
    L'ubound d'un Split "." sur la chaîne de caractères "strdurée" suffirait, non?

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Sincèrement, pour obtenir une valeur en millisecondes, je ne vois pas l'intérêt d'utiliser la fonction Format...

  5. #5
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    1 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 1 150
    Par défaut
    Si justement, je voudrais récupérer un format hh:mm:ss.sss plus lisible, ton code renvoie une valeur décimale peu parlante pour moi

  6. #6
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par Kestion100 Voir le message
    Si justement, je voudrais récupérer un format hh:mm:ss.sss plus lisible, ton code renvoie une valeur décimale peu parlante pour moi
    De deux choses l'une :
    soit la valeur renvoyée est inférieure à la minute et dans cas, je ne vois pas ce qu'apporte de mettre systématiquement devant "00:00:"
    soit la valeur renvoyée est supérieure à la minute et dans ce cas, la précision de la milliseconde semble tout à fait disproportionnée.

    Dans tous les cas, je ne trouve pas de 12345 soit "moins parlant" que 00:00:12.345.

    Mais... bon... les goûts et les couleurs...

  7. #7
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Rien n'est plus décevant de se montrer poli, aimable et de se faire envoyer sur les roses.
    Et ce sans que l'on daigne se pencher sur la moindre réponse.
    Pas grave...(je laisse les lecteurs juger)

    Kestion,

    Si tu utilises ce processus, tu peux inclure au format des libellés heures minutes, à conditions d'utiliser des doubles doubles quottes.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "00""heures""00""minutes""00.00""secondes"""

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Temps d'exécution macro trop long
    Par STUDIO101 dans le forum Excel
    Réponses: 4
    Dernier message: 19/02/2019, 19h10
  2. Optimisation temps d'exécution macro
    Par julio44 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 07/07/2011, 13h14
  3. Temps d'exécution macro s'allonge avec le temps
    Par Runsh63 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 14/06/2011, 14h48
  4. Allongement d'uin temps d'exécution d'une macro
    Par avanrill dans le forum Access
    Réponses: 2
    Dernier message: 06/03/2006, 19h29
  5. Réponses: 2
    Dernier message: 25/05/2004, 15h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo