Figer la mise à jour de la date de saisie d'une ligne

Jackis44

XLDnaute Nouveau
PB : Figer la mise à jour de la date de saisie d'une ligne 31-déc.-08

Lors d'une saisie d'une ligne dans une feuille de calcul, je dois conserver trace de la date de saisie
La tentation est grande de noter dans la cellule idoine : Date de saisie = AUJOURDHUI()
Malheureusement, cette belle formule ne "fige" pas la date et celle-ci évolue chaque jour que Dieu fait !
Je butte sur ce problème tout simple et me refuse de demander à la personne qui se sert de la feuille que j'ai créée de saisir la date en dur à chaque ligne

Avez-vous une solution à ce bête problème ??

Merci de votre amicale attention et du temps que vous me consacrerez
Jackis
 

Jackis44

XLDnaute Nouveau
Re : Figer la mise à jour de la date de saisie d'une ligne

Bonjour Risleure,
Ta proposition est un progrès, certes.
Je vais, bien sûr, faire passer le message.
Toutefois, c'est bien dommage que notre outil préféré n'offre pas de solution simple à ce problème que j'imagine très courant.
En tout cas, merci beaucoup pour ton aide.
Bonne année puisque nous y sommes
A+
Jackis
 

Guiv

XLDnaute Occasionnel
Re : Figer la mise à jour de la date de saisie d'une ligne

Bonjour,

Avec un peu de bricolage....
La saisie en A1, A2,... déclenche l'inscription de la date du jour "figée" en D1, D2...

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
l = Target.Row
If Not Intersect(Target, Range("A2:A65536")) Is Nothing And Target.Count = 1 Then
 Range("D" & l).Select
    ActiveCell.FormulaR1C1 = "=TODAY()"
    Range("D" & l).Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    Range("B" & l).Select
End If
End Sub

Tous mes vœux frais pondus de ce matin,

Guiv
 

Pièces jointes

  • date_figée.xls
    26.5 KB · Affichages: 129

Risleure

XLDnaute Occasionnel
Re : Figer la mise à jour de la date de saisie d'une ligne

Re,
Ah mais si on a le droit d'utiliser VBA alors sur la très bonne base de Guiv mais plus court.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim NoLign As Integer
NoLign = Target.Row
Dim Madate As Date
Madate = Now()
If Not Intersect(Target, Range("A2:A65536")) Is Nothing And Target.Count = 1 Then
 Range("D" & NoLign).Value = Format(Madate, "dd/mm/yy")
 Range("B" & NoLign).Select
End If
End Sub


Attention selon les versions XL
Format(Madate[highlight], [/code]"dd/mm/yy")
ouFormat(Madate[highlight]; [/code]"dd/mm/yy")
Mes voeux frais aussi :D
 

Fo_rum

XLDnaute Accro
Re : Figer la mise à jour de la date de saisie d'une ligne

Salut,

à tester avec "=AUJOURDHUI()"
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If IsDate(Target) Then
    Application.EnableEvents = False
    Target = Target.Value
    Application.EnableEvents = True
  End If
End Sub
pour éviter des "itérations" !
 
Dernière édition:

Jackis44

XLDnaute Nouveau
Re : Figer la mise à jour de la date de saisie d'une ligne

Bonsoir GUIV, RISLEURE, FO RUM, JEAN MARIE,
Désolé de vous répondre si tard, mais les fêtes de fin d'année m'ont fort éloignées de mon clavier.
Merci à tous pour toutes ces réponses !! Ya plus qu'à...
Merci Jean Marie pour le fil, tout y est, y compris une solution pur sucre Excel !!
Bonne année à tous
Jackis
 

Discussions similaires

Statistiques des forums

Discussions
312 379
Messages
2 087 761
Membres
103 661
dernier inscrit
fcleves