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.


#9

Bonjour,

Je fais suite à ce poste, je sais qui date, mais la formule est parfaite pour un problème que j’essaye de résoudre et je serais très reconnaissante si quelqu’un pourra m’aider. J’ai plus ou moins les mêmes besoin qu’Adrien quand a la date, mais j’aurais aussi besoin de la même chose sur l’heure. C’est à dire, quand ma colonne E est rempli, j’aimerais avoir la date qui s’affiche dans la colonne B (le code donné par @mdo100 marche très bien), et aussi l’heure dans la colonne D et c’est la que je beugge. Je suis une vraie débutante en VBA et bien que j’ai réussi à adapter le code pour la date, je ne sais pas du tout comment faire pour ajouter l’heure.

Merci d’avance si quelqu’un peut éclairer ma lumière.


#10

Bonjour @Diditagain,

A tester:

 Private Sub Worksheet_Change(ByVal Target As Range)

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

Voir fichier exemple ICI==> Diditagain.xlsm (15,3 Ko)

Cordialement.


#11

Salut MDO,

Une petite question, même si la macro fonctionne,
Pourquoi tu m’a mis deux boucles ? :thinking:


#12

Salut @Mimimathy, :wink:

Parce que je ne me suis pas posé plus de question que cela. :thinking:

Et puis je n’avais pas vu que tu avais répondu ici Saisi date et heure, qui ne changent pas, dans 2 colonnes différentes vu que la demande devait être urgente pour être posée 2 fois :face_with_raised_eyebrow:

Cordialement.


#13

@mdo100; @Mimimathy. Merci beaucoup à tous les 2. , la réponse de Mimimathy était parfaite. Désolée d’avoir posté 2 fois, je n’étais pas sur, en prenant un ancien poste, que quelqu’un le verrai.

Merci encore :+1::+1::+1:


#14

Bonsoir, j’ai un petit problème je veux mettre la date du jour de la décontamination et quand c’est contaminé mettre en cours. Il vous serai possible de m’aider dans mon projet je vous prie.


a fermé ce sujet #15