date modif

P

philou

Guest
Bonjour bonsoir à tous,

Question :

esr il possible d'afficher la date d'une modification de 2 ou 3 cellules ?

ex : je veux afficher en A3 la date de modif de A1 ou A2
et ainsi de suite en colonne.

Bref, afficher en bout de ligne la date d'une modif sur cette ligne.

le top serait d'avoir l'heure de la modif en plus de la date.

Merci à vous.


Philou
 
L

LaurentTBT

Guest
Bonsoir Philou.

Regarde si cela te va (à copier dans la feuille de code correspondant à ta feuille Excel):

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.EntireRow.Range("IV1").End(xlToLeft).Column > 1 Then
If Target.EntireRow.Range("IV1").End(xlToLeft).NumberFormat = "dd/mm/yy h:mm;@" Then
Target.EntireRow.Range("IV1").End(xlToLeft) = Now()
Else
Target.EntireRow.Range("IV1").End(xlToLeft).Cells(1, 2) = Now()
Target.EntireRow.Range("IV1").End(xlToLeft).NumberFormat = "dd/mm/yy h:mm;@"
End If
Else
Target.EntireRow.Range("B1") = Now()
Target.EntireRow.Range("B1").NumberFormat = "dd/mm/yy h:mm;@"
End If
Application.EnableEvents = True
End Sub


Juste un petit détail que je n'ai pas peaufiné: si tu effaces toutes les données d'une ligne, la date et l'heure se mettrons sur la case B de cette ligne. Si cette possibilité existe, il faudra rajouter un test.
En fait, je vais chercher la dernière case de la ligne, quelque soit le nombre de colonnes remplies. C'est ce qui complique un peu. Si ces nombres ne changent pas, on peut faire beaucoup plus simple.

Ah oui, un dernier détail: si tu cliques sur une cellule, que tu cliques ensuite dans la barre de formule, après Enter, même s'il n'y a pas eu de changement, l'heure sera modifiée.

Bonne soirée.
 
P

philou

Guest
Salut Laurent,

Va falloir que je fasse des essais, mais même avant d'avoir testé je te dis
Merci.

Mon gros prob, c'est que 2 personnes peuvent modifier ce qui se trouve dans une ligne, et il faudrait que l'on sache ce qui a été modifié uniquement dans certaines cellules, et pas nécessairement dans toute la ligne.

ex : si a1 ou/et a2 a été modifiée, a3 me dis quand


Voila


Merci


Philou
 
P

philou

Guest
Bonjour à tous,

Voila, j'ai testé, et il y a un léger problème :)

En fait dans ce fichier j'ai une macro qui replace des formules dans 3 colonnes.

Normalement la colonne de date de modif est la colonne H

Mais quand je donne l'ordre de me replacer les formules, la date modif vient se placer dans les cellules vides de la colonne G, et en plus, le format de cellules vides de la colonne G changent de format ( ça devient format personnalisé en lie et place de monétaire ).

comment régler ce problème ?

Merci

Philou
 
L

LaurentTBT

Guest
Bonjour à tous.

Bon, Philou, si ta date de modif est toujours en colonne H, cela simplifie tout! En effet, j'ai fait un peu compliqué, pensant que le numéro de colonne ou il fallait la mettre était variable (tu m'avais dit "dernière colonne")

Du coup, ceci devrait suffire:

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Target.EntireRow.Range("H1").NumberFormat = "dd/mm/yy h:mm;@"
Target.EntireRow.Range("H1")= Now()
Application.EnableEvents = True
End Sub

Beaucoup plus simple, n'est-ce pas?

Une petite remarque, cependant, tu parles d'une macro. Quand cette macro agira sur ton tableau, il y aura inscription d'une nouvelle date de modif.

Bonne journée.

Laurent.
 
P

Philou

Guest
Laurent,


Un tout grand merci, je viens de mettre en application et en test sur un des fichiers, et ça fonctionne.

Je vais laisser en test quelques jours, et ensuite il ne restera plus qu'a reproduire dans les autres feuilles.

Concernant la remarque de ton dernier post, la macro qui remet en place mes formules, ne modifie pas les date et heures de la colonne H, mais par contre, vient mettre une date et heure dans la colonne H dont la ligne est vide.


A+ et merci


Philou
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 611
Messages
2 090 226
Membres
104 452
dernier inscrit
hamzamounir