Modifier la vitesse des touches de clavier

Bonjour,

j'ai créé une macro qui se limite à 4 fois d'activation par seconde. Le problème, c'est que les premiers instants, ma macro se relance environ en 0,4 secondes lorsque j’appuie sur une touche du clavier pour l'activer.

Quelqu'un peut m'aider à résoudre ce petit problème?

1 réponse

  1. Contributeur
    Bonjour,

    Je n'ai pas très bien compris "le problème" mais si tu as fait une macro, c'est que tu fonctionnes avec un ordinateur.

    Si tu veux avoir des précisions au dixième de seconde, mieux vaut utiliser un chronomètre électronique car un ordinateur a plein de fonctions à dérouler en plus du contrôle du temps. En conséquence les mesures que tu vas faire sont assez aléatoires.
    0
    1. ce que je cherche à faire, c'est de faire en sorte que lorsque j'appuis sur une touche de clavier pour activer une macro, quelle se réactive le plus vite possible pour qu'il n'ai pas de différence entre la vitesse d'exécution moyen au début et la vitesse d'exécution moyen total.

      Voici une partie de la macro que j'utilise pour faire l'effet que j'ai parlé dans le question:

      Option Explicit
      Sub bas()
      If Range("c3").Value = 0 Then
      Range("c3").Value = 1
      ' Touche de raccourci du clavier: Ctrl+k
      Dim x As Integer
      Dim y As Integer
      x = Cells(3, 1).Value
      y = Cells(3, 2).Value
      If y < 1048576 Then
      x = x
      y = y + 1
      Range("c4") = Cells(y, x).Value
      Dim secondes As Variant
      Dim timer_avant As Variant
      Dim t As Variant
      secondes = 0.25
      timer_avant = timer
      Do While timer < timer_avant + secondes
      DoEvents
      Loop
      Call haut
      Else
      End If
      Cells(3, 1).Value = x
      Cells(3, 2).Value = y
      Cells(y, x).Select
      Range("c3").Value = 0
      End If
      End Sub

      bien sur, il ne faut pas oublier d'y mettre un racourci clavier pour mieux me comprendre
      0
    2. Contributeur
      re
      Tu mets opportunément 'DoEvents' et donc tu rends la main au système qui te répondra quand il aura le temps.
      C'était tout à fait le sens de mon message : tu ne peux pas prétendre avoir des réponses précises comme un chronomètre qui n'a que cette fonction.
      0