Code en boucle avec une pause

Bonjour à tous,

Cela fait très longtemps que j'ai touché aux macros/vba et c'est bien connu quand on ne pratique pas régulièrement....

Mon souci est ultra basique mais je bloque.

Le fichier joint précise ma recherche. J'ai fait une macro dans laquelle il manque "la pause en attente d'une Entrée" et a l'inconvénient de renvoyer à une cellule prise lors de l'enregistrement et non à la cellule suivante (non nominative)

Vous avez devinez... c'est pour réviser de l'anglais

thank you in advance

24code-en-boucle.xlsm (16.15 Ko)

Bonjour,

si j'ai bien compris, voir fichier joint :

@ bientôt

LouReeD

Bonsoir LouReed

Tu as bien compris et merci pour le résultat .

J'ai testé sur des listes réelles et il apparait qu'il manque pour l'essentiel de pouvoir s'arrêter quand on veut et pouvoir reprendre là on est s'est arrêté.

J'ai résumé les petits soucis dans le fichier joint.

Cordialement

Tonthon

Bonsoir,

un nouvel essai :

un bouton arrêter, permet d'arrêter le code, si vous recliquer sur Allons - y cela redémarre où vous en étiez.

Si vous enregistrez, et ré ouvrez le fichier lors du "allons-y !" le code regarde la cellule A1, si il y a une valeur le code commence à cette valeur, s'il n'y a pas de valeur le code regarde la colonne de la cellule active, si cette colonne est la B alors le code démarre à la ligne de la cellule active et sinon le code commence en ligne 2.

Résultat : vous voulez recommencer à partir du début : deux solutions

1 - effacer la cellule A1 et sélectionner une cellule en dehors de la colonne B

2 - mettre 2 dans la cellule A1

sinon il vous suffit de faire "Allons-y !" et "Arrêter".

@ bientôt

LouReeD

Bonjour LouReed

Bravo, cela fonctionne et en plus j'ai compris le fonctionnement de ton code

La seule petite réserve mais cela provient peut-être de mon pc, il y a un délai de latence quand je clique sur ARRET comme s'il y avait une pause.

Est-il possible d'avoir une touche plutôt à droite du clavier qui actionnerait immédiatement ARRET (comme ESC pour sauter la pause ) ?

En attendant, Excellente journée

Bonjour,

Concernant ta dernière question ... tu peux à loisir utiliser la méthode

application.onkey

...

Si tu veux creuser le sujet ...

https://msdn.microsoft.com/fr-fr/VBA/Excel-VBA/articles/application-onkey-method-excel

En espèrant que cela t'aide ...

James007 a écrit :

Bonjour,

Concernant ta dernière question ... tu peux à loisir utiliser la méthode

application.onkey

...

Si tu veux creuser le sujet ...

https://msdn.microsoft.com/fr-fr/VBA/Excel-VBA/articles/application-onkey-method-excel

En espèrant que cela t'aide ...

Bonjour,

J'ai regardé attentivement et je comprends dans le principe mais ce n'est pas parce que je comprends que j'arrive à appliquer

En clair, je ne vois pas où insérer par exemple "Application.OnKey {F1}, "??????"

J'ai tenté de voir dans le premier code proposé mais sauf erreur de ma part ESC qui fait sauter l'étape pause est programmé différemment.

En conclusion, je suis perdu ...

Bonjour,

si j'ai du temps, je retravaille le code afin de fonctionner autrement, pour voir ce que cela peut donner il y a le jeu QCM qui donne un temps de réponse limité et qui déclenche l'affichage de la question suivante, à moins que l'on clic et ça va plus vite... mais ce n'est pas basé sur Application.delay, mais sur un lancement de code toutes les x secondes.

@ bientôt

LouReeD

Bonjour à tous,

En l'état, je peux déjà bien bosser la révision de mon anglais.

Autrement dit, il n'y a pas urgence pour avoir une solution où ARRET serait plus rapide sans ce délai de latence.

Naïvement je pensais qu'en passant par une solution "VBA" plutôt que par macro pouvait solutionner cela ?

L'essentiel pour moi, c'est que vous prenez cet challenge pour un jeu donc le faire avec plaisir

Excellent WE

Bonjour,

Naïvement je pensais qu'en passant par une solution "VBA" plutôt que par macro pouvait solutionner cela ?

en fait VBA c'est du VB Visual Basic pour Application, du coup le VBA est rattaché à l'application Excel dans notre cas.

Quand on parle de macro, c'est l'ensemble des instruction VBA, en somme c'est la même chose

D'où mon fait d'avoir surligné Naïvement !

@ bientôt

LouReeD

Bonjour,

voilà c'est fait :

vous lancer "le jeu", les mots à trouver passent en blanc. Le mot à traduire passe sur fond jaune, 5 secondes après la solution s'affiche. Le code passe au mot suivant. Si la cellule est vide tout s'arrête et reste dans l'état, le numéro de ligne "vide" est inscrite en cellule A1.

Si vous voulez arrêter plus tôt alors le mot à trouver "en cours" s'affiche et le n° de ligne suivante est inscrit en A1, comme cela si vous relancer le test, il reprend au mot suivant.

Si lors du test vous répondez plus vite que les 5 secondes alors vous pouvez faire [Entrée] du clavier numérique pour passer au mot suivant, cela relance les 5 secondes pour le nouveau mot.

Si vous voulez commencer le test à la ligne que vous souhaitez, alors soit vous inscrivez en A1 le n° de ligne souhaitée, soit vous effacez A1 et vous sélectionnez à la souris la cellule de départ.

Le fichier (en version ultimate ! ) :

Merci à James007 pour le OnKey, et j'ai pris [Entrée] pavé numérique pour que ce soit à droite du clavier !

@ bientôt

LouReeD

Bonsoir,

Je me suis précipité à télécharger ta version Ultimate, le temps de lire "le mode d'emploi" et j'ai testé.

Rien à redire sauf et

J'espère que ce jeu va inspirer ceux qui veulent revoir leur "anglais sans peine"

Excellente soirée

PS : Je regarderai le code plus tard

Bonsoir,

merci @ vous pour vos mercis !

@ bientôt

LouReeD

Rechercher des sujets similaires à "code boucle pause"