Date de saisie automatique sans changement


#1

Bonjour, dans un tableau la date de saisie par un code sans changement le lendemain par la formule “aujourdhui”…
je m’explique quand je saisie un code et que la date du jour se met automatiquement…cette date ne doit pas changer le jour j+1…??


#2

Bonjour
Je ne suis pas sur d’avoir compris ta question
Pourrais-tu nous donner plus de détails stp?


#3

Bonjour @Adrien,
Salut @DocteurExcel,

@Adrien, tu ne précises pas les colonnes concernées !

Du coup, j’ai supposé que les dates devaient se trouver en colonne “A” et les codes sont en colonne “B”.

Pour chaque code mis dans la colonne “B” la date sera mise automatiquement en colonne “A”, les dates ne changeront pas tant que les codes ne changent pas, donc le lendemain il y aura bien la date de la veille, sauf si on change une valeur dans la colonne “B”.

Un solution par VBA code a modifier si besoin:

 Private Sub Worksheet_Change(ByVal Target As Range)

    Dim h, iSct As Range
    Set iSct = Intersect(Target, Range("B:B"))
    If iSct Is Nothing Then Exit Sub
    Application.EnableEvents = False
    For Each h In iSct.Cells
    If IsEmpty(h) Then
    h.Offset(0, -1) = ""
    Else
    h.Offset(0, -1) = Format(Now, "mm/dd/yy")
    End If
    Next
    Application.EnableEvents = True
    
End Sub  

Pour voir le code faire alt + F11 puis dans la fenêtre “Visual Basic” double clique sur la “Feuil1”

Ci-joint un fichier exemple ICI==> Adrien V1.xlsm (17,6 Ko)

Cordialement.


#4

Bonjour,
C’est exactement ça mais je voudrais sur excel et non en VBA…avec des formules excel s’il vous plait ? merci
Une fois que le code est mis en colonne B la date s’affiche dans la colonne A et ne bouge plus …merci


#5

Bonjour @Adrien,

Nouvelle proposition par formule:

Mais avant il y a quelques manipulation a faire:



Revenir sur le fichier et sélectionner la colonne “A”, puis clique droit de la souris, dans la liste déroulante clique gauche de la souris sur “Format de cellule” puis choisir “Date” cliquer sur “OK

Formule en “A2” et tirer vers le bas autant que nécessaire.

=SI(B2="";"";SI(A2<>"";A2;AUJOURDHUI()))

Fichier exemple ICI==> Adrien V2.xlsx (11,8 Ko)

Cela convient-il ?

Cordialement.


#6

bonjour,
Génial…super…ça marche un grand merci à vous


#7

ça marche et c’est génial…pourtant j’en ai essayé des formules…MERCI


#8

Re @Adrien,

Bien, je suis content de ta satisfaction :wink:

Si ton problème est résolu n’oublie pas de cliquer sur le petit :white_check_mark: sous la solution pour la valider.

Merci.