[Résolu]cliquer puis inscrire l'heure

  • Initiateur de la discussion Initiateur de la discussion Thibault98
  • Date de début Date de début

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 !

Thibault98

XLDnaute Occasionnel
Bonjour,

Avec VBA serait-il possible de cliquer dans les colonnes de A jusqu'à D puis inscrire l'heure dans les lignes correspondantes dans les colonnes E jusqu'à H ?

merci d'avance.

Thibault. 😕
 
Dernière édition:
Re : cliquer puis inscrire l'heure

Bonjour Thibault, bonjour le forum,

Personnellement je n'ai rien compris à ta demande... Je pense qu'un fichier exemple, montrant ce que tu as avant et ce que tu voudrais après traitement de la macro, nous permettrait de mieux comprendre...
 
Re : cliquer puis inscrire l'heure

Bonjour, Thibault98

Sans plus de précision, sans fichier à tester, essayez, dans le module de la feuille concernée :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:D4")) Is Nothing Then Target.Offset(0, 4).Value = Time
End Sub

Edit : Bonjour, Robert 🙂
 
Dernière édition:
Re : cliquer puis inscrire l'heure

Bonjour, Thibault98, Robert 🙂, le Forum,

Un essai, sans certitude d'avoir compris le réel besoin 😕 :

Code:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("a:d")) Is Nothing Then
If Target.Value <> "" Then Target.Offset(, 4) = Format(Time, "hh:mm:ss")
End If
End Sub

A bientôt 🙂

P. S. : Bonjour, Victor21 🙂
 
Dernière édition:
Re : cliquer puis inscrire l'heure

Bonjour Thibault, bonjour le forum,

Personnellement je n'ai rien compris à ta demande... Je pense qu'un fichier exemple, montrant ce que tu as avant et ce que tu voudrais après traitement de la macro, nous permettrait de mieux comprendre...

Voici ce fichier
Merci
 

Pièces jointes

Re : cliquer puis inscrire l'heure

Bonjour à tous,

avec ceci:
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("A2:D18")) Is Nothing Then
Target.Offset(0, 4).Value = Format(Time, "hh:mm")
Target = "X"
End If
End Sub

à+
Philippe
 

Pièces jointes

Re : cliquer puis inscrire l'heure

On y est presque, j'ai modifié le code mais maintenant si un "X" est mis et que je clique dessus de nouveau il doit disparaitre ainsi que l'heure associée.

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A:D")) Is Nothing Then Target.Offset(0, 4).Value = Format(Time, "hh:mm")
Target = "X"
End Sub

Merci
Thibault.
 
Re : cliquer puis inscrire l'heure

Re,

avec ceci pour un double-clic
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("A:D")) Is Nothing Then
Target.Offset(0, 4).Value = Format(Time, "hh:mm")
Target = IIf(Target = "X", "", "X")
If Target = "" Then Target.Offset(0, 4) = ""
End If
End Sub

ou ceci pour une simple sélection
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A:D")) Is Nothing And Target.Count = 1 Then
Target.Offset(0, 4).Value = Format(Time, "hh:mm")
Target = IIf(Target = "X", "", "X")
If Target = "" Then Target.Offset(0, 4) = ""
End If
End Sub

à+
Philippe

Edit:
Dans la seconde procédure, j'ai ajouté
And Target.Count = 1
pour éviter un plantage lors d'une sélection multiple
 
Dernière édition:
- 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
18
Affichages
607
Réponses
23
Affichages
672
Réponses
4
Affichages
265
Réponses
15
Affichages
270
Retour