Modifier la vitesse des touches de clavier
Pascal79A
Messages postés
15
Statut
Membre
-
gbinforme Messages postés 14930 Date d'inscription Statut Contributeur Dernière intervention -
gbinforme Messages postés 14930 Date d'inscription Statut Contributeur Dernière intervention -
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?
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
-
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.-
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 -
-