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

créer un fichier log

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 !

eliooo22

XLDnaute Nouveau
Bonjour à tous et merci d'avance pour votre précieuse aide,
Voilà je cherche à créer un fichier log à partir d'une macro qui dès qu'un utilisateur ouvre un fichier A cela copie son username dans un fichier B.
Mon problème c'est que je ne connais pas la commande pour que les username se copient automatiquement les uns en dessous des autres dans le fichier B.

Merci ++

Cordialement,
 
Re : créer un fichier log

Bonjour le Forum,
Un code récupèré sur ce Forum et à mettre au niveau ThisWorkBook
il enregistre dans un fichier journal mois par mois les accés (Entrée et sortie) au fichier XL
Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Enregistre la fermeture dans le journal de suivi
journalise "fermeture"
End Sub
'***********
Private Sub Workbook_Open()
'Enregistre l'ouverture dans le journal de suivi
journalise "ouverture"
End Sub
'****************
Sub journalise(txt)
rep_journal = [highlight]"C:\Mettre le nom du répertoire dans lequel tu souhaites mettre le jounal\"
'A modifier = f(besoin)
If Right(rep_journal, 1) = "\" Then rep_journal = Left(rep_journal, Len(rep_journal) - 1)
On Error GoTo fin
If Dir(rep_journal, vbDirectory) = "" Then MkDir (rep_journal)
filnb = FreeFile
Open rep_journal & "\journal_Chrono_" & Format(Now, "mmyy") & ".txt" For Append As #filnb
Print #filnb, Now & ", " & txt & ", " & Application.UserName
Close #filnb
fin:
On Error GoTo 0
End Sub[/code]
 
Dernière édition:
Re : créer un fichier log

Bonjour,

cette macro me convient
Code:
Sub Log()
Dim InfosUtilisateur As String

InfosUtilisateur = Environ("username") & "    " & Now
    AddLineToTextFile "C:\Log.txt", ""
    AddLineToTextFile "C:\Log.txt", InfosUtilisateur
End Sub



Sub AddLineToTextFile(textFilePath As String, line As String)
Dim myFso As Object, textFile As Object
Set myFso = CreateObject("Scripting.FileSystemObject")
Set textFile = myFso.OpenTextFile(textFilePath, 8)
textFile.WriteLine line
textFile.Close
Set myFso = Nothing: Set textFile = Nothing
End Sub

mais j'aimerais rajouter le nom du fichier qui a été ouvert

merci
 
Re : créer un fichier log

bonjour brice_,

essaye avec cette macro :
Code:
Sub Log()
Dim InfosUtilisateur As String
AddLineToTextFile "C:\Log.txt", vbNewLine & Environ("username") & vbTab & Now & vbTab & ThisWorkbook.Name
End Sub

a+
 
Re : créer un fichier log

Bonjour chez vous


VBA sait écrire dans un fichier texte sans utiliser Windows Script 😉
(comme l'avait déjà évoqué Risleure )

Code:
Const FichierLOG As String = "C:\Log.txt"
Sub Logging()
Dim X As Integer
X = FreeFile
Open FichierLOG For Append As #X
Print #X, Environ("username") & ": " & Date & "-" & Format(Time, "hh:mm") & ": " & ThisWorkbook.Name
Close #X
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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…