Créer un LOG à l'ouverture d'un fichier

Bonjour,

J'ai actuellement un fichier xlsx sur mon réseau d'Entreprise et je voudrais savoir qui l'ouvre et quand

Pour cela, je souhaiterais que les LOG soient dans un fichier à part et non dans le fichier concerné, et si possible dans un <REP> différent.

Une idée ?

Merci de votre aide

Cdt

Bonjour cmzxnene

Voici un exemple de ce que l'on peut utiliser dans un module

Sub Journalise(bNull As Boolean)  ' Fichier log à la sortie de l'appli
  Dim intFileNum As Integer
  Dim HOuverture As String, GetId As String
  Dim sPathLog As String
  ' Initialisation du fichier
  intFileNum = FreeFile(0)
  ' heure d'ouverture
  HOuverture = Format(Now(), "hh:mm:ss")
  ' GID de l'utilisateur
  GetId = Environ("username")
  ' Chemin d'accès du fichier LOG
  ' l'utilisateur doit pouvoir y avoir accès
  sPathLog = "\\MonServeur\Dossier Informatique\Log\"
  ' Vérifier si répertoire existe, sinon le créer et le masquer
  On Error Resume Next
  MkDir (sPathLog): SetAttr sPathLog, 2
  On Error GoTo 0
  ' Inscrire le log
  Open sPathLog & "Journal.log" For Append As #intFileNum
  Print #intFileNum, Format(Now, "dd/mm/yyyy") & "," & HOuverture & "," & GetId & "," & ThisWorkbook.Name
  Close #intFileNum
End Sub

Qu'on appelle dans ThisWorkbook

Private Sub Workbook_Open()
  Call Journalise(True)
End Sub

A+

Bonjour Bruno,

Et merci beaucoup pour votre réponse et code

En revanche, je ne domine pas spécialement le VBA même si je me débrouille un petit peu

Petites questions sur votre code

- le code est à mettre dans un module de quel fichier ? celui qui sera lu par les utilisateurs (ex : Fichier A) ? (dans ce cas, pas bon car le fichier sera en xlsm et sera bloqué sur le réseau par les nouvelles sécurités de Microsoft) ou dans le fichier (ex : fichier B) qui me servira de contrôle pour vérifier si le fichier A a bien été lu et quand ?

- ' Chemin d'accès du fichier LOG

' l'utilisateur doit pouvoir y avoir accès

- Quand vous parlez de 'l'utilisateur' de qui il s'agit ? moi ? ou celui qui ouvre le fichier A ?

Ce sont peut-être des questions bêtes mais il faut que j'approfondisse
Merci pour votre aide
Bien cordialement

Hervé

Re,

Si vous ne pouvez pas mettre de VBA dans le fichier A, je ne peux rien faire pour vous

La nouvelle sécurité Microsoft, n'empêche pas l'utilisation d'un fichier ".xlsm" il faut juste qu'il soit validé
Voir peut-être la discussion ici https://forum.excel-pratique.com/discussions/nouvelle-securite-fichier-excel-xlsm-177485

A+

Bonjour Bruno,

C'est bien le cas, je ne voulais pas mettre de VBA dans mon fichier A à cause de la sécurité Microsoft

Sauf si bien entendu j'arrive à définir comme emplacement de confiance un répertoire sur notre réseau d'Entreprise

Mais ce n'est pas si simple

Je n'arrive pas à ajouter ce répertoire dans le Centre de confidentialité

Je vais continuer à fouiller

Merci quand même

Cdt

Re,

Si le nom de ce fichier ne change pas, il suffit de le débloquer une fois selon la procédure dans le lien

Dans mon entreprise, nous utilisons un tas de fichier ".xlsm" et pourtant nous avons une sécurité accrue

A+

Rechercher des sujets similaires à "creer log ouverture fichier"