Sur mon document, il est souhaité lorsqu'on double clic dans une cellule, que l'heure s'inscrive. Jusque là, tout est nickel.
Mais si pour une raison ou une autre, quelques minutes plus tard, l'on veuille double cliquer a nouveau dans cette même cellule afin de modifier l'heure, cette fois-ci, la date s'inscrit aussi avec la nouvelle heure.
Mon problème est le suivant: comment faire pour que la date ne s'affiche pas, seulement la nouvelle heure?
Voici mon code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("a11:a110")) Is Nothing Then
VAL_heuredroite
Else
End If
If Not Application.Intersect(Target, Range("o11110")) Is Nothing Then
VAL_heuredroite
il s'agit de ma première question sur le forum.
Mon problème est le suivant: comment faire pour que la date ne s'affiche pas, seulement la nouvelle heure?
Dans le code transmis, la seule chose qu'on voit c'est que si on doubleclique en A11:A110 ou O11:O110(?) on appelle la sub VAL_heuredroite, mais comme on ne connait pas le code de cette sub on ne peut apporter de réponse ...
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("a11:a110")) Is Nothing Then
If Target = "" Then
Target = Now 'VAL_heuredroite
Else
Target = Time
End If
End If
End Sub
Dans cette sub on fait appel à une autre sub :heuredroite
le plus simple est de réécrire la Sub Worksheet_BeforeDoubleClick, comme le proposait vgendron.
à chaque double clic dans un cellule de l'une ou l'autre plage, on affiche l'heure :
VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("A11:A110, O11:O110")) Is Nothing Then
Target = Time
End If
End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("a11:a110")) Is Nothing Then
If Target = "" Then
Target = Now 'VAL_heuredroite
Else
Target = Time
End If
End If
End Sub
Dans cette sub on fait appel à une autre sub :heuredroite
le plus simple est de réécrire la Sub Worksheet_BeforeDoubleClick, comme le proposait vgendron.
à chaque double clic dans un cellule de l'une ou l'autre plage, on affiche l'heure :
VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("A11:A110, O11:O110")) Is Nothing Then
Target = Time
End If
End Sub
If h = "" Then heuredroite
Rem If UCase([a1]) Like "*LULU*" Then MsgBox "A1 contient LULU"
Rem If v = "" Then MsgBox "non"
End Sub
J'ai fait les modification, t'el que vous et Gendron me le proposez. Mais cette fois-ci, la date et l'heure s'affichent dès le premier double clic (et la date disparait les double-clics suivant).
quand tu cliques dans une cellule vide: on met quoi?? la date ou l'heure ou les deux?
quand tu cliques une seconde fois dans la cellule (non vide donc): tu y mets quoi maintenant??
quand tu cliques dans une cellule vide: on met quoi?? la date ou l'heure ou les deux?
quand tu cliques une seconde fois dans la cellule (non vide donc): tu y mets quoi maintenant??
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("a11:a110")) Is Nothing Then
Target = Time
End If
End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("a11:a110")) Is Nothing Then
Target = Time
End If
End Sub
Heu .... ben ..... c'est t'y donc pas ce qu'est ce que j'avais proposé au post #6 ??
Par ailleurs
Dans Sub VAL_heuredroite(), on trouve l'appel suivant: If h = "" Then heuredroite où heuredroite semble être une autre sub. D'où codage tordu ??
On ne sait toujours pas comment était le code qui inscrivait l'heure ou la date ( dans heuredroite ou encore dans une autre sub ?), mais c'est réglé, c'est le principal.