Bonjour,
J'ai beaucoup regardé sur internent mais je n'arrive pas à appliquer de formule ou code vba car je suis une vraie débutante.
Je voudrais que dès que l'on effectue un changement dans la colonne "indice" la date de la colonne "date cde" se met à jour mais reste figée le lendemain si on ouvre le fichier.
Pouvez-vous m'aider.
En vous remerciant par avance
Je voudrais que dès que l'on effectue un changement dans la colonne "indice" la date de la colonne "date cde" se met à jour mais reste figée le lendemain si on ouvre le fichier.
Bonjour Adie, JHA,
Un essai en PJ avec une petite macro événementielle :
VB:
Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Column = 6 And Cells(Target.Row, 1) <> "" Then
Cells(Target.Row, 7) = Date
End If
End Sub
Par contre, dans l'état, si on remodifie Indice, cela remodifiera date CDE.
Merci JHA,
J'ai remplacé par maintenant pour voir ci celà fonctionne et c'est bon mais lorsque je change l'indice la date (enfin l'heure là pour tester) ne change pas automatiquement. Est-ce normal?
Sylvanu merci pour ton code. Je vais le tester dans mon fichier et voir demain ci ça change.
Question : avec ce code on a plus besoin de mettre de formule =Aujourdhui dans la colonne?
Bonjour Adie, JHA,
Un essai en PJ avec une petite macro événementielle :
VB:
Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Column = 6 And Cells(Target.Row, 1) <> "" Then
Cells(Target.Row, 7) = Date
End If
End Sub
Par contre, dans l'état, si on remodifie Indice, cela remodifiera date CDE.
Plus de formule en colonne G.
Quand on change la valeur de l'indice, la date CDE se modifie.
En plus elle est en "dur" donc elle ne se modifiera plus jusqu'à ce qu'on change à nouveau Indice.
Plus de formule en colonne G.
Quand on change la valeur de l'indice, la date CDE se modifie.
En plus elle est en "dur" donc elle ne se modifiera plus jusqu'à ce qu'on change à nouveau Indice.
Peut être un excès de zèle.
Si vous changer l'indice, je regarde s'il y a un code. S'il n'y a pas de code je ne fait rien.
C'était pour éviter les modifs intempestives si on rentre un indice sans avoir rempli la ligne.
En PJ sans cette sécurité.
Je suis désolé quelque chose doit m'échapper.
Je vois bien que tu as enlevé la partie And Cells mais sur ton fichier cela ne fonctionne pas, la date ne s'insère pas à la saisie
Peut être un excès de zèle.
Si vous changer l'indice, je regarde s'il y a un code. S'il n'y a pas de code je ne fait rien.
C'était pour éviter les modifs intempestives si on rentre un indice sans avoir rempli la ligne.
En PJ sans cette sécurité.
Je voudrais que dès que l'on effectue un changement dans la colonne "indice" la date de la colonne "date cde" se met à jour mais reste figée le lendemain si on ouvre le fichier.
bonjour
après avoir mis un indice tu pourra plus le changer
VB:
Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Or Target.Column <> 6 Then Exit Sub
If Cells(Target.Row, 7) <> "" Then
MsgBox "VOUS NE POUVEZ PAS CHANGER CETTE LIGNE!!!"
With Application
.EnableEvents = False
.Undo
.EnableEvents = True
End With
Else
Cells(Target.Row, 7) = Date
End If
End Sub
Votre solution a très bien marché sur mon ordi. Parcontre quand je l'ai testé sur d'autres (version 2013 et un 2016) j'ai eu un message d'erreur cf ci dessous
Comment puis-je résoudre le problème?
Dès qu'on change une valeur dans Indice la date s'insère automatiquement et reste figée : Regarde la pièce jointe 1068709
Ou alors quelque chose m'a échappé.
Bonjour,
Ne disposant que de 2007, je ne peux tester.
Essayez avec Now.
En mettant les cellules en format Date, car Now renvoie un nombre du genre : 02/06/2020 11:44:57
L'erreur en photo du Post#12 ne signifie pas forcément que c'est "Date" qui bloque et n'est pas trouvé dans le Projet ou Bibliothèque. (Parfois le débogueur VBA est très "bête")
Il faut que tu vérifies si tu n'as pas ajouté des références à des OCX ou DLL non existantes dans les PCs où tu as testé. (Aller dans Tools => References et voir si il ne manque pas une ou des références).