XL 2021 Affichage date d'actualisation

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

julienha

XLDnaute Occasionnel
Bonjour,

J'ai des données que j'actualisent régulièrement, et j'aimerais affciher dans une cellule la date de la dernière actualisation.

merci pour votre aide
 
Bonjour,

Avec un fichier admettant les macros (.xlsm, .xls), au moyen d'un bouton vous pourriez enregistrer la date et l'heure de la sauvegarde dans une cellule (ou une table). La seule condition pour que cela soit fiable c'est de toujours sauvegarder par ce bouton. C'est loin d'être garanti ! 😊
 
Bonjour Julienha, Eric,
Ou en utilisant une macro Worksheet_Change. Quand on modifie une valeur, on met à jour la date et l'heure de la modification, avec :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("A2:A40")) Is Nothing Then Cells(Target.Row, "B") = Now
End Sub
 

Pièces jointes

Bonjour Julienha, Eric,
Ou en utilisant une macro Worksheet_Change. Quand on modifie une valeur, on met à jour la date et l'heure de la modification, avec :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("A2:A40")) Is Nothing Then Cells(Target.Row, "B") = Now
End Sub
Merci. Est-ce possible d'utiliser en Range un tableau
Bonjour Julienha, Eric,
Ou en utilisant une macro Worksheet_Change. Quand on modifie une valeur, on met à jour la date et l'heure de la modification, avec :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("A2:A40")) Is Nothing Then Cells(Target.Row, "B") = Now
End Sub
 
Bonjour Julienha,
Avec un petit effort, un fichier test aurait évité une fois de plus de faire un peu au pif.
Alors essayez d'adapter ça :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [Tableau1[Donnée]]) Is Nothing Then
        Cells(Target.Row, 1 + Target.Column) = Now
    End If
End Sub
 

Pièces jointes

Bonjour Julienha,
Avec un petit effort, un fichier test aurait évité une fois de plus de faire un peu au pif.
Alors essayez d'adapter ça :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [Tableau1[Donnée]]) Is Nothing Then
        Cells(Target.Row, 1 + Target.Column) = Now
    End If
End Sub
Merci. Désolé de ne pas avoir joint de fichier avant.
En Feuil1, il y a la data sous forme de tableau et en Feuil2 le TCD qui synthétise la data.
J'aimerais avoir en E2 la date de la dernière mise à jour, après chaque actualisation de la data en Feuil1.
Merci
 

Pièces jointes

Comment actualiser vous les données de Feuil1 ? Par import, copie ....
La macro en PJ demande qu'on valide au moins une cellule en Feuil1 pour réactualiser la date.
Tout ce qui a été fait avant ne sert à rien si vous ne validez pas une cellule. D'où l'intérêt d'une PJ.
 

Pièces jointes

Comment actualiser vous les données de Feuil1 ? Par import, copie ....
La macro en PJ demande qu'on valide au moins une cellule en Feuil1 pour réactualiser la date.
Tout ce qui a été fait avant ne sert à rien si vous ne validez pas une cellule. D'où l'intérêt d'une PJ.
pour actualiser les données de la Feuil1 je vais dans données -> Actualiser (il y a une source externe connectée dans mon fichier réel)
 
Sorry, je ne connait pas de macro automatique qui détecte une actualisation par une source externe.
Donc la seule possibilité que je vois, surtout avec mon XL2007, c'est de valider une cellule avec la PJ du post #7.
Mais peut être que quelqu'un de plus affuté trouvera une solution plus adéquate.
 
Sorry, je ne connait pas de macro automatique qui détecte une actualisation par une source externe.
Donc la seule possibilité que je vois, surtout avec mon XL2007, c'est de valider une cellule avec la PJ du post #7.
Mais peut être que quelqu'un de plus affuté trouvera une solution plus adéquate.
ok merci. Est-ce qu'il est possible de prendre en compte la date de la dernière actualisation du TCD par exemple
 
Bonjour,
La liste des events détectables est ici.
Il existe bien la macro événementielle "SheetPivotTableAfterValueChange" qui s'active après qu’une cellule ou une plage de cellules à l’intérieur d’un tableau croisé dynamique a été modifiée ou recalculée.
Par contre je ne l'ai jamais, et ne sait pas l'utiliser.
Sorry.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
21
Affichages
598
Réponses
1
Affichages
166
Réponses
3
Affichages
375
Réponses
7
Affichages
180
Réponses
6
Affichages
281
  • Question Question
Microsoft 365 format date
Réponses
3
Affichages
105
Retour