Microsoft 365 compter le temps passé sur une ligne et cumuler tous les temps passés

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous 🙂

Voilà plusieurs jours que je planche sur un nouveau besoin et, pour l'instant, malgré tests et recherches, je n'y suis pas encore arrivé.

Contexte
Dans le fichier test joint, j'ai les suivants :
- ligne 6 masquée (hauteur 0),
- lignes 7 à 10 contiennent des informations à afficher "clairement" quand clic sur une cellule,

Code feuille Test
VB:
Private Sub Worksheet_SelectionChange(ByVal R As Range)
If Not Intersect(R, Range("a7:s20000")) Is Nothing Then
    If R.RowHeight = 300 Then
    Cells(ActiveCell.Row, 1).Select
    [a1].Select
    ActiveWindow.ScrollRow = Selection.Row
    Else
    SupprFormats
    Application.EnableEvents = False
    Application.ScreenUpdating = False

    Rows("6:6").Copy
    Cells(ActiveCell.Row, 1).Select
    Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Selection.RowHeight = 300
    Cells(ActiveCell.Row, 1).Select
     Application.CutCopyMode = False
    End If
    [a1].Select
    ActiveWindow.ScrollRow = Selection.Row
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End If
End Sub

Action
1 - Pour démarrer le test, clic sur le bouton "supprime formats" (supprime les formats des lignes (sauf ligne 6),
2 - Pour afficher en clair et en couleur les lignes clic dans une cellule de la ligne choisie pour affichage,

Mon besoin
Je voudrais mettre en cellule :
1 - en cellule "M5" le temps pendant lequel je suis resté sur la ligne affichée
2 - en cellule "M4" le temps "cumulé" pendant lequel je suis resté sur toutes les lignes

Auriez-vous le bon code ?

Je joins un p'tit fichier test et je continue mes recherches,
Un grand merci,
lionel 🙂
 

Pièces jointes

Dernière édition:
Solution
En déclarant la ligne cliquée en Public pour la mémoriser puis avec :
VB:
    If LigneCliquée <> R.Row Then T0 = Timer
et
   If R.Row <> LigneCliquée Then
        LigneCliquée = R.Row
        Tpassé = (Timer - T0) / 86400
        [M5] = Tpassé
        [M4] = [M4] + Tpassé
    End If
Bonjour Gérard 🙂

"Il n'est pas normal que ta macro s'exécute sur les lignes > 10"
Dans mon fichier le code doit s'exécuter au clic sur les lignes 7 à 10 ou plus si lignes remplies.

"Tu devrais être capable d'adapter mes codes à ce que tu veux faire."

LOL pas si évident que ça pour moi .... je tente ... je tente ...
🙂
 
"Et quand on sélectionne la colonne A cela affiche la ligne 1, c'est normal ça ?"
Chez moi pas d'affichage de ligne si clic avant ligne 7
Quand clic de A à z dans une lignes remplie à partir de la lignes 7, le but est d'afficher la ligne au même format que celui de la ligne 6 et de compter le temps que je reste sur la ligne affichée.

"Et le clic sur le bouton ne fait rien !!!"
Si tu veux évoquer le bouton "supprime formats pour tests", c'est juste pour remettre les lignes à "sans format" pour tester à nouveau.
🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
1 K
  • Question Question
Microsoft 365 Programme trop lent
Réponses
12
Affichages
897
Retour