donner un temps à une frappe

johnshark

XLDnaute Junior
Bonjour,
je suis étudiant en STAPS et souhaiterait mettre au point une feuille excel permettant d'analyser un match et mes faibles connaissances dans ce domaine ne m'aide pas trop. :eek:
Ce que je souhaiterais c'est créer une base de données des actions vues en match (jusque là ça va), à chaque fois que je vois une action sur une vidéo ou en direct j'aimerais qu'en tapant sur la touche correspondante, cela soit enregistré avec le temps correspondant (par rapport au moment du début du match)... là ça devient très difficile pour moi.
Si quelqu'un pouvait m'aider ce serait sympa.
 

JCGL

XLDnaute Barbatruc
Re : donner un temps à une frappe

Bonjour à tous,

Un essai par Double-Click :

Code:
Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
ActiveCell = Format(Time, "hh:mm:ss")
End Sub
A+

Bonjour Luc ;-)
 

Pièces jointes

  • JC Pointage.zip
    6.5 KB · Affichages: 38
  • JC Pointage.zip
    6.5 KB · Affichages: 45
  • JC Pointage.zip
    6.5 KB · Affichages: 40
Dernière édition:

Luki

XLDnaute Accro
Re : donner un temps à une frappe

Salut John, JCGL

Un essai avec les touches "a" et "b" pour des actions a et b :rolleyes:

Un module standard ET une procédure de désactivation des touches dans le module ThisWorbook.
Tu démarres en appuyant sur le bouton puis avec les touches a et b.
A suivre...

En attendant je vais regarder ce qu'a commis l'ami JC.
 

Pièces jointes

  • ActionsDeMatch.zip
    9.2 KB · Affichages: 45

johnshark

XLDnaute Junior
Re : donner un temps à une frappe

merci à tous les deux, la vitesse des réponses me fait dire que c'était plutôt simple...:(
Luki si je me mets dans visual basic, pour nommer et ajouter des actions il suffit que je complète :

Application.OnKey ("a"), "Action_A"
Application.OnKey ("b"), "Action_B"

ou c'est plus compliqué ? Je demande car je n'y connais vraiment pas grand chose.

J'ai une autre question du coup, est-ce que par le même principe je peux avoir le temps de chaque action?
encore merci
 

johnshark

XLDnaute Junior
Re : donner un temps à une frappe

j'ai pas pu tenir donc j'ai essayé et j'ai réussi à ajouter et modifier les noms après quelques erreurs j'avoue...

En y réfléchissant un peu, pour le temps d'action je pourrais faire une fonction avec une simple soustraction de temps... néanmoins mon problème est le suivant : certaines actions sont extrêment courtes tandis que d'autres sont un peu plus longues, donc ça me paraît plus que discutable, à moins que... vu qu'on peut imaginer que les actions se succèdent. :confused:
 

Luki

XLDnaute Accro
Re : donner un temps à une frappe

Re,
Tu as fait tes premiers pas dans le VBA, fais attention, on y prend vite goût ! :p

On pourrait imaginer donner le top de fin d'action avec la touche ESPACE par exemple et s'il s'agit de 2 actions qui s'enchaînent, que la deuxième donne aussi le top de fin de la première.

A voir si c'est réalisable sans que ça devienne une usine à gaz.

A mon tour de poser une question : c'est quoi : STAPS ? :eek:

Autre question : combien d'actions différentes as tu à saisir?
 
Dernière édition:

johnshark

XLDnaute Junior
Re : donner un temps à une frappe

j'ai bien réfléchi et toutes les actions se succèdent donc il faudrait qu'une action mette fin au chrono.
Je suis très loin des premiers pas en VBA...j'essaie déjà de comprendre ce que tu as fait et commentt ça marche :) mais c'est vrai que ça a l'air intéressant.
STAPS c'est la faculté des sciences et des techniques en activité physique et sportive... le nom pompeux pour fac de sport.
J'ai 23 actions différentes.
 

Luki

XLDnaute Accro
Re : donner un temps à une frappe

re,
merci pour tes explications.

Ca pourrait donner ça : chaque nouvelle action arrête le chrono de l'action précédente. De plus, la barre d'espace arrête aussi le chrono s'il n'y a pas d'action suivante.
D'autre part, un match étant divisé en plusieurs périodes (2, si mes souvenirs sont bons:rolleyes:), j'imagine que tu voudras à terme récupérer cette info. Je l'ai donc intégrée à la base.

Concernant le code, il n'est pas optimal pour gérer 23 actions différentes. Je cherche d'autre pistes, pour l'instant sans résultats concluants.

Dis-nous si le principe est bon. On verra comment améliorer par la suite. Je te donnerais alors plus d'explication sur le code et sur la démarche que j'ai suivie.
A+

Edit : Je pense avoir trouvé une solution plus adaptée et plus propre. reste à la mettre en oeuvre. je ferai ça ce soir. Bonne journée.
 

Pièces jointes

  • ActionsDeMatch2.zip
    11 KB · Affichages: 48
Dernière édition:

Luki

XLDnaute Accro
Re : donner un temps à une frappe

Re
Une nouvelle mouture qui simplifie la gestion des touches et des actions.
Comme promis, je vais essayer de te donner quelques explications.

La 1ère approche fonctionne pour quelques touches à gérer mais devient vite une usine à gaz pour 23! :mad:
Elle est assez intuitive et tu l'as comprise sans connaissances en vba. Mais:
Elle oblige à écrire en dur l'équivalence de chaque touche DANS le code, ce qui n'est pas adapté pour 23 actions car trop fastidieux à corriger et difficile à faire évoluer. De plus, elle oblige à écrire 23 fois la même macro. pas top. Et le Pire, c'est le risque d'oublier de supprimer ces équivalence en quittant le fichier. Sans compter qu'en cas de plantage, tu doives redémarer excel pour retrouver l'usage normal de ton clavier. (A me relire, je me demande pourquoi je te l'ai proposée! arf!).

La 2ème approche utilise une propriété des userform : la capacité de certains de ses contrôles à réagir à la pression d'une touche. C'est ce que j'ai utilisé en créant un bouton caché.
A l'ouverture du userform, ce bouton prend le focus. A partir de là, si une touche est enfoncée, cela génère un évènement qui renvoie le code de la touche. Il ne reste plus qu'à chercher ce code dans une table (dans ce cas, une feuille excel en "clair" : 'T_CodesAction') et renvoyer le nom de l'action.
Le premier avantage, c'est d'écrire un seul code pour toutes les touches
le second, c'est de ne pas avoir à toucher au clavier, donc pas de risque de le mettre en carafe en cas de plantage.
le Troisième : la mise à jour de la liste des codes d'action est beaucoup plus simple. De plus, la liste peut-être allongée à l'envi sans soucis. La seule condition étant de ne pas laisser de lignes vides entre les valeurs.
Le 4ème : tu peux facilement faire une copie du fichier et ne changer que le nom des actions pour l'adapter à d'autre disciplines : Rugby, Handball, tricot, echecs, point de croix etc,etc...:rolleyes:

Les étapes suivantes pourraient être : la possibilité d'arrêter le magnétoscope et de reprendre un peu plus tard; de reprendre à partir d'un point donné car tu as raté un passage etc....

Je te laisse pour l'instant découvrir la nouvelle mouture et faire tes commentaires avant d'aller plus loin.

Bonne soirée.:)

EDITION: j'ai oublié de m'occuper de l'incrémentation des périodes, mais je n'ai pas le courage ce soir...
 

Pièces jointes

  • ActionsDeMatch3.zip
    16.4 KB · Affichages: 58
Dernière édition:

johnshark

XLDnaute Junior
Re : donner un temps à une frappe

Bizarre, j'ai répondu mais ça n'a pas été pris en compte :confused:

Re,
celle-ci est vraiment très intéressante et je comprends comment ça marche. J'ai essayé de regarder dans le VBA aussi mais là c'est plus compliqué... surtout au niveau des lignes à écrire pour faire réaliser les actions, mais ça m'intéresse de plus en plus donc dès que j'ai un peu de temps je vais me lancer dedans.
C'est vrai que les options dont tu parles sont plutôt aléchantes mais je ne veux pas prendre tout ton temps non plus...
J'ai une question : est-ce qu'il est possible d'utiliser une boite de dialogue pour caractériser les actions déjà rentrées?
Je m'explique, un joueur tire, mais ce tir peut prendre différentes formes (en courant, en suspension etc) et peut être marqué, arrêté ou hors-cadre, or par le bais d'une boite avec menu déroulant, serait-il possible de choisir l'action "tir", ce qui ferait apparaître une catégorie "forme" et une catégorie "résultat" avec des choix à faire, par le biais d'un bouton ajouter, les descritptions se mettraient dans des cases voulues.
Merci pour tout le boulot que tu fais :eek:
 

Luki

XLDnaute Accro
Re : donner un temps à une frappe

Re,

Concernant la mise à jour des actions, tu n'as pas besoin d'intervenir dans le code, la mise à jour de la feuille xl suffit. C'est l'intérêt de cette solution. Donc si tu as besoin d'adapter le code à ton fichier, tu peux globalement faire des copier/coller (sauf si tu veux réécrire à des fins didactiques).

Concernant les options des actions, ça dépend un peu à quel moment tu veux les saisir : tout de suite après avoir saisi l'action ou une fois la période terminée..
On peux l'approcher par des listes en cascades dans un userform ou par des listes de validation dans la feuille ou encore, pourquoi, pas avec des touches (en affectant des numéros par exemple, ou en utilisant MAJ ;CTRL etc)

L'idée étant toujours de permettre au système d'évoluer sans réécrire tout le code. Dans ce cas, je préconise de saisir ces données dans des feuilles xl, le code ne servant qu'à aller les chercher.

Il serait utile je pense, que tu prépare, si ce n'est déjà fait, un fichier hiérarchisé qui répertorie les différentes actions ainsi que leurs options. Ca permettrait de voir comment traiter au mieux ces options.

N'hésites pas à demander des compléments d'infos si tu ne comprends pas le code.

A+
 

no vice ma kro

XLDnaute Nouveau
Re : donner un temps à une frappe

Bonjour,

le fichier ActionDeMatch3 serait parfait pour moi...si je pouvais changer les touches a,b,c,d,e,f par 1,2,3,4,5,6, etc afin de le piloter par un pad numérique USB (en ayant affecté toutes les touches de ce pad à une action)

Je n'arrive malheureusement pas à accéder au code et ne vois que la macro lancer_Userform.

Quelqu'un pourrait-il m'aiguiller?

Merci
 

jeanpierre

Nous a quitté
Repose en paix
Re : donner un temps à une frappe

Bonjour no vice ma kro, le fil,

Lorsque tu es sous VBE, tu ouvres la feuille pour trouver l'UserForm. Clic droit dessus et tu selectionnes Code. Tu y es si j'ai bien compris.

Bon après-midi

Jean-Pierre
 

Statistiques des forums

Discussions
312 396
Messages
2 088 055
Membres
103 709
dernier inscrit
FrrankX