Est il possible d'avoir en A1 l'heure exacte ou, par exemple, la cellule B1 à été incrémentée.
Pour être plus clair : Je tape '1' dans la cellule B1 et la cellule A1 m'inscrit l'heure à laquelle cette info à été tapée. Idem pour les cellules suivantes (A2-B2, etc..)
Il existe bien la formule MAINTNANT(), mais toutes les cellules se modifient en fonction de la dernière info tapée. D'ailleur l'aide d'Excell la présente comme 'volatile'...
J'ai trouvé 75% de la réponse en fouillant un peu le site.
Lien supprimé
Voici la macro proposé par Robert, avec l'aide de JB
Private Sub Worksheet_Change(ByVal Target As Range) 'à chaque modification
'n'agit que si la cellule active (Target) est dans la colonne A
'si l'intersection plage(A2:A65536) et Target n'est pas vide
If Not Application.Intersect(Target, Range('A2:A65536')) Is Nothing Then
'écrit l'équivalent de MAINTENANT() mais figé dans la cellule adjacente
Target.Offset(0, 1).Value = Now
'si tu effaces le code barre, efface aussi la date
If Target.Value = '' Then Target.Offset(0, 1).Value = ''
End If
End Sub
Question : comment la modifier pour que l'heure s'écrive depuis la cellule A12 sur base des infos de la cellule N12 ( exemple : en A12 s'écrit l'heure dès que la cellule N12 est incrémentée. Idem por les suivante (+1)
Je vous avoue que je n'y connais absolument rien en Macro. Mais alors, rien du tout
Merci de votre aide
Nb : Le tableau étant déja asser costaud, je n'ai de la place que pour l'heure. La date n'est pas utile...
Une formule que m'avait donné André il y a quelques jours avec ses conseils :
Voici comment procéder :
Menu Outils / Options / Calcul
Cocher 'Itération' et mettre 'Nbre maximum d'itérations' à 1 / OK
Sélectionner la cellule A1 et y appliquer un format date
Dans la cellule A1 mettre la formule :
=SI(A2='';'';SI(A1<>'';A1;AUJOURDHUI()))
Pour modifier la date il faut effacer le contenu de A2, valider cette cellule vide, puis y taper une nouvelle valeur.
Bonsoir le forum
Bonsoir Bablute, bonsoir JORDAN, bonsoir Ândré
Vite fait avant de passer à table et si j'ai bien compris ta question. Il va de soi que tu sélectionnes la colonne A pour la mettre au format heure HH:MM :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range('N:N')) Is Nothing Then
Target.Offset(rowOffset:=0, columnOffset:=-13) = Now
End If
End Sub
Bonsoir le forum
Bonsoir Bablute, bonsoir JORDAN, bonsoir Ândré
Vite fait avant de passer à table et si j'ai bien compris ta question. Il va de soi que tu sélectionnes la colonne A pour la mettre au format heure HH:MM :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range('N:N')) Is Nothing Then
Target.Offset(rowOffset:=0, columnOffset:=-13) = Now
End If
End Sub