Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Historiser les OUvertures de Fichiers

  • Initiateur de la discussion Initiateur de la discussion piwa
  • Date de début Date de début

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 !

piwa

XLDnaute Occasionnel
Bjr,

J'ai trouvé sur cet excellent site et surtout vous contributeurs, le moyen d'historiser les ouvertures de fichiers.... il me manque juste une chose ... si jamais l'utilisateurs n'enregistre pas en sortant (donc ds la plupart des cas) je n'ai aucune trace de passage .....

PS : Hors de question de forcer l'enregistrement dans la macro ... les fichiers font parfois > 40Mo

Ci dessous le code (je remercie encore tous les contributeurs du forum) :

Private Sub Workbook_Open()
'
Sheets("Synthese").Select 'Aller sur feuille synthese pour eviter de voir la completude trace…
MsgBox "AVERTISSEMENT : Activer les macros IMPERATIVEMENT sinon les resultats seront erronés et/ou certaines fonctions seront impossibles. Donc si vous avez repondu NON , fermer le classeur et recommencer. Merci © 2006 PA"
Sheets("Trace").Unprotect ("mdp")
a = Sheets("Trace").Cells.Find("*", [A1], , , 1, 2).Row + 1
Sheets("Trace").Range("A" & a).Value = Application.UserName
Sheets("Trace").Range("B" & a).Value = Date
Sheets("Trace").Range("C" & a).Value = Now - Int(Now)
Sheets("Trace").Protect ("mdp")
Sheets("Synthese").Select 'Aller sur feuille synthese

End Sub

J'ai trouver le code suivant mais je n'arrive pas à la faire fonctionner, qui pourrait palier au probleme .... un fichier externe d'historisation :

Le code :
Private Sub fichier()

' Via fichier
' il faut mettre ce code à la place du code de Private Sub Workbook_Open()

fichier = "C:\Temp\le_fichier.txt" ' le chemin du fichier

Log = Application.UserName ' logging
dat = Date

Open fichier For Append As #1
Print #1, Log, dat
Close #1

End Sub


Merci de votre aide..
 
Re : Historiser les OUvertures de Fichiers

Voila la version finale si cela peut servir à l'nn d'entre vous ....

A chaque ouverture d'un fichier (en lecture seule ou pas), (avec ou sans enregistrement de l'utilisateur), vous recuperez dans un fichier Log.xls le nom, la date et l'heure d'ouverture de ce fichier.

Merci à tous et particulierement à MichelXLD

le Code :
Private Sub Workbook_Open()
Dim Wb As Workbook
Dim a As Long
'Traceur d 'ouverture de Fichier Utilisateur + Date + Heure ds Fichier Log.xls Externe

' Ouvrir le fichier Histo (attention chemin)
Application.ScreenUpdating = False 'Masquer l'affichage
Set Wb = Workbooks.Open(Filename:="L:\Pilo ADLR\Log.xls")

a = Wb.Sheets("Trace").Range("A65536").End(xlUp).Row + 1

Wb.Sheets("Trace").Range("A" & a).Value = Environ("username")
Wb.Sheets("Trace").Range("B" & a).Value = Date
Wb.Sheets("Trace").Range("C" & a).Value = Now - Int(Now)

'Fermer en sauvegardant les modifications
Wb.Close True
Application.ScreenUpdating = True 'Retablir l'affichage
MsgBox "AVERTISSEMENT : Activer les macros IMPERATIVEMENT sinon les resultats seront erronés et/ou certaines fonctions seront impossibles. Donc si vous avez repondu NON , fermer le classeur et recommencer. Merci © 2006 xxx"

End Sub
 
- 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
2
Affichages
432
Réponses
0
Affichages
964
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…