OVH Cloud OVH Cloud

Suivre la trace des changements

18 réponses
Avatar
Bob
Bonjour,

Nous sommes plusieurs =E0 travailler avec un m=EAme document=20
et nous devons r=E9guli=E8rement faire des changements dans ce=20
document.

Est-ce qu'il y a une fa=E7on de pouvoir suivre l'=E9volution=20
des changements pour que je puisse savoir la date du=20
dernier changement par exemple.

merci de votre aide

windows 2000
excel 2002

8 réponses

1 2
Avatar
Alain CROS
Bonjour.

Sub WScriptNetworkUserName()
Dim ObjNetwork
Set ObjNetwork = CreateObject("WScript.Network")
MsgBox "UserName = " & ObjNetwork.UserName
Set ObjNetwork = Nothing
End Sub'AC

Alain CROS.

Bob a écrit:
Est-ce que c'est possible d'identifier la personne qui
a


fait le dernier enrengistrement?





Avatar
isabelle
bonjour Bob,

je ne suis des messieurs, mais y a peux être une piste par :

MsgBox Application.ActiveWorkbook.BuiltinDocumentProperties(6)

isabelle


Messieurs,

Svp. laissez moi savoir si vous avez une piste ou bien si
ça semble impossible??

Merci!

-----Message d'origine-----
dis, clément, au lieu de parler du beaujolais dans cette
ficelle, tu

ferais mieux de prendre en mains la seconde question de
bob...

allez, au boulot, vieux soldat...
jps

Bob a écrit:
Est-ce que c'est possible d'identifier la personne qui
a


fait le dernier enrengistrement?

Est-ce possible que dans un onglet apparaisse un
journal


de tous les changements.
Ex Lucie 24/12/2003 14h32
Paul 25/12/2003 20h00 (bourreau de travail!!)
Pierre 12/01/2004 11h00

Merci pour votre collaboration!




-----Message d'origine-----
voilà, voilà...et pardon for the delay but I was busy


elsewhere...

('tain de vie de retraité)

With ActiveSheet.PageSetup
.CenterFooter = "Dernière mise à jour le " & Format


(Date, dd/mm/yyyy")

End With


et, comme dit denis, attention aux coupures


intempestives...

jps

Bob a écrit:

J'ai une question qui s'ajoute...

Est-ce possible de mettre cet info dans la note de bas


de


page dans le centre???

Merci





-----Message d'origine-----
Bonjour et merci de répondre à ma question!

Je pense que cette solution pourrait répondre à une


bonne



partie de mes problèmes mais comment je peux ajouter
l'heure et est-ce possible d'indiquer le nom de la
personne ou un identifiant de la personne qui a fait
le





changement? Est-ce que la date va changer si la


personne



consulte le document mais ne fait aucune
modification??






Merci!




-----Message d'origine-----
bonsoir bob
si tu veux que cette info apparaisse dans la cellule


B1,




proc à mettre


dans le module ThisWorkbook du classeur en question :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Range("B1").Value = "Dernière mise à jour le " &
Format







(Date, _


"dd/mm/yyyy")
End Sub

HTH
jps

Bob a écrit:


Bonjour,

Nous sommes plusieurs à travailler avec un même


document



et nous devons régulièrement faire des changements


dans




ce


document.

Est-ce qu'il y a une façon de pouvoir suivre


l'évolution



des changements pour que je puisse savoir la date
du







dernier changement par exemple.

merci de votre aide

windows 2000
excel 2002


.



.




.





.











Avatar
Misange
tiens une madame !
qui te dis que peut être ceci pourrait t'aider :

http://www.excelabo.net/xl/repertoires.php#classeurpartagé

Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta


le 20/11/2003 15:55:
Messieurs,

Svp. laissez moi savoir si vous avez une piste ou bien si
ça semble impossible??

Merci!



-----Message d'origine-----
dis, clément, au lieu de parler du beaujolais dans cette


ficelle, tu

ferais mieux de prendre en mains la seconde question de


bob...

allez, au boulot, vieux soldat...
jps

Bob a écrit:

Est-ce que c'est possible d'identifier la personne qui



a

fait le dernier enrengistrement?

Est-ce possible que dans un onglet apparaisse un



journal

de tous les changements.
Ex Lucie 24/12/2003 14h32
Paul 25/12/2003 20h00 (bourreau de travail!!)
Pierre 12/01/2004 11h00

Merci pour votre collaboration!





-----Message d'origine-----
voilà, voilà...et pardon for the delay but I was busy


elsewhere...


('tain de vie de retraité)

With ActiveSheet.PageSetup
.CenterFooter = "Dernière mise à jour le " & Format


(Date, dd/mm/yyyy")


End With


et, comme dit denis, attention aux coupures


intempestives...


jps

Bob a écrit:


J'ai une question qui s'ajoute...

Est-ce possible de mettre cet info dans la note de bas


de



page dans le centre???

Merci






-----Message d'origine-----
Bonjour et merci de répondre à ma question!

Je pense que cette solution pourrait répondre à une


bonne




partie de mes problèmes mais comment je peux ajouter
l'heure et est-ce possible d'indiquer le nom de la
personne ou un identifiant de la personne qui a fait






le

changement? Est-ce que la date va changer si la


personne




consulte le document mais ne fait aucune






modification??

Merci!





-----Message d'origine-----
bonsoir bob
si tu veux que cette info apparaisse dans la cellule


B1,





proc à mettre



dans le module ThisWorkbook du classeur en question :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Range("B1").Value = "Dernière mise à jour le " &







Format

(Date, _



"dd/mm/yyyy")
End Sub

HTH
jps

Bob a écrit:



Bonjour,

Nous sommes plusieurs à travailler avec un même


document




et nous devons régulièrement faire des changements


dans





ce



document.

Est-ce qu'il y a une façon de pouvoir suivre


l'évolution




des changements pour que je puisse savoir la date








du

dernier changement par exemple.

merci de votre aide

windows 2000
excel 2002


.



.


.



.













Avatar
Bob
Madame Misange,
Wow! j'ai exécuté le script ci-bas et c'est presque la
solution parfaite! Encore 2 choses

****1ere Est-ce possible de copier l'info dans un onglet
que je vais nommer «suivi» plutôt que dans un fichier
log.txt?
Genre l'enregistrement le plus récent s'inscrit toujours
dans la cellule A1?? 2e plus récent dans A2 ainsi de
suite...

****2e Le nom de l'usager et de l'ordinateur
n'apparaissent pas dans le fichier log. J'ai vu en
essayant des choses une bulle aparaître et incrire
OsUserName=Vide. Est-ce qu'il faudrait faire apparaître le
Network UserName plutôt car ici nous sommes en réseau?
J'ai essayé de changer le OsUserName par NetworkUserName
sans succès!

Merci pour votre aide précieuse

**********SCRIPT*****************
Private Sub Workbook_Open()


Dim FileNum As Long

FileNum = FreeFile
Open ThisWorkbook.Path & "log.txt" For Append As
#FileNum

Print #FileNum, ThisWorkbook.FullName & " OPENED: " &
_
Format(Now, "yyyy-mm-dd hh:mm:ss") & " User: " & _
OSUserName & " from computer: " & OSMachineName
Close #FileNum
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim FileNum As Long

FileNum = FreeFile
Open ThisWorkbook.Path & "log.txt" For Append As
#FileNum

Print #FileNum, ThisWorkbook.FullName & " CLOSED: " &
_
Format(Now, "yyyy-mm-dd hh:mm:ss") & " User: " & _
OSUserName & " from computer: " & OSMachineName
Close #FileNum

Cancel = False

End Sub

********************fin*****************************
-----Message d'origine-----
tiens une madame !
qui te dis que peut être ceci pourrait t'aider :

http://www.excelabo.net/xl/repertoires.php#classeurpartagé

Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta


le 20/11/2003 15:55:
Messieurs,

Svp. laissez moi savoir si vous avez une piste ou bien
si


ça semble impossible??

Merci!



-----Message d'origine-----
dis, clément, au lieu de parler du beaujolais dans
cette




ficelle, tu

ferais mieux de prendre en mains la seconde question de


bob...

allez, au boulot, vieux soldat...
jps

Bob a écrit:

Est-ce que c'est possible d'identifier la personne qui



a

fait le dernier enrengistrement?

Est-ce possible que dans un onglet apparaisse un



journal

de tous les changements.
Ex Lucie 24/12/2003 14h32
Paul 25/12/2003 20h00 (bourreau de travail!!)
Pierre 12/01/2004 11h00

Merci pour votre collaboration!





-----Message d'origine-----
voilà, voilà...et pardon for the delay but I was busy


elsewhere...


('tain de vie de retraité)

With ActiveSheet.PageSetup
.CenterFooter = "Dernière mise à jour le " & Format


(Date, dd/mm/yyyy")


End With


et, comme dit denis, attention aux coupures


intempestives...


jps

Bob a écrit:


J'ai une question qui s'ajoute...

Est-ce possible de mettre cet info dans la note de
bas







de



page dans le centre???

Merci






-----Message d'origine-----
Bonjour et merci de répondre à ma question!

Je pense que cette solution pourrait répondre à une


bonne




partie de mes problèmes mais comment je peux
ajouter







l'heure et est-ce possible d'indiquer le nom de la
personne ou un identifiant de la personne qui a
fait








le

changement? Est-ce que la date va changer si la


personne




consulte le document mais ne fait aucune






modification??

Merci!





-----Message d'origine-----
bonsoir bob
si tu veux que cette info apparaisse dans la
cellule









B1,





proc à mettre



dans le module ThisWorkbook du classeur en
question :









Private Sub Workbook_BeforeClose(Cancel As Boolean)
Range("B1").Value = "Dernière mise à jour le " &







Format

(Date, _



"dd/mm/yyyy")
End Sub

HTH
jps

Bob a écrit:



Bonjour,

Nous sommes plusieurs à travailler avec un même


document




et nous devons régulièrement faire des
changements










dans





ce



document.

Est-ce qu'il y a une façon de pouvoir suivre


l'évolution




des changements pour que je puisse savoir la date








du

dernier changement par exemple.

merci de votre aide

windows 2000
excel 2002


.



.


.



.






.











Avatar
sabatier
en guise de prologue :
je ne sais plus si j'ai posté ce message...bob nous le dira peut-être
jps

bonsoir bob
pour la 1ère question :

With ActiveSheet.PageSetup
.CenterFooter = "Dernière mise à jour le " & Format(Date, "dd / mm /
yy") & " par" & Application.UserName
End With

pour la récupération du pied de page dans une cellule, je passe la main...
jps

Bob a écrit:
Est-ce que c'est possible d'identifier la personne qui a
fait le dernier enrengistrement?

Est-ce possible que dans un onglet apparaisse un journal
de tous les changements.
Ex Lucie 24/12/2003 14h32
Paul 25/12/2003 20h00 (bourreau de travail!!)
Pierre 12/01/2004 11h00

Merci pour votre collaboration!




-----Message d'origine-----
voilà, voilà...et pardon for the delay but I was busy


elsewhere...

('tain de vie de retraité)

With ActiveSheet.PageSetup
.CenterFooter = "Dernière mise à jour le " & Format


(Date, dd/mm/yyyy")

End With


et, comme dit denis, attention aux coupures


intempestives...

jps

Bob a écrit:

J'ai une question qui s'ajoute...

Est-ce possible de mettre cet info dans la note de bas


de


page dans le centre???

Merci





-----Message d'origine-----
Bonjour et merci de répondre à ma question!

Je pense que cette solution pourrait répondre à une


bonne



partie de mes problèmes mais comment je peux ajouter
l'heure et est-ce possible d'indiquer le nom de la
personne ou un identifiant de la personne qui a fait le
changement? Est-ce que la date va changer si la


personne



consulte le document mais ne fait aucune modification??

Merci!




-----Message d'origine-----
bonsoir bob
si tu veux que cette info apparaisse dans la cellule


B1,




proc à mettre


dans le module ThisWorkbook du classeur en question :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Range("B1").Value = "Dernière mise à jour le " & Format


(Date, _


"dd/mm/yyyy")
End Sub

HTH
jps

Bob a écrit:


Bonjour,

Nous sommes plusieurs à travailler avec un même


document



et nous devons régulièrement faire des changements


dans




ce


document.

Est-ce qu'il y a une façon de pouvoir suivre


l'évolution



des changements pour que je puisse savoir la date du
dernier changement par exemple.

merci de votre aide

windows 2000
excel 2002


.



.




.










Avatar
Bob
Mise au point!!!
Bonjour à tous,

J'ai le script suivant qui me permet de suivre la trace
des changements dans un fichier. Toutefois le script
inscrit les infos dans un fichier «log.txt». Voir les
questions en dessous du script.

**********SCRIPT*****************
Private Sub Workbook_Open()


Dim FileNum As Long

FileNum = FreeFile
Open ThisWorkbook.Path & "log.txt" For Append As #FileNum

Print #FileNum, ThisWorkbook.FullName & " OPENED: " & _
Format(Now, "yyyy-mm-dd hh:mm:ss") & " User: " & _
OSUserName & " from computer: " & OSMachineName
Close #FileNum
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim FileNum As Long

FileNum = FreeFile
Open ThisWorkbook.Path & "log.txt" For Append As #FileNum

Print #FileNum, ThisWorkbook.FullName & " CLOSED: " & _
Format(Now, "yyyy-mm-dd hh:mm:ss") & " User: " & _
OSUserName & " from computer: " & OSMachineName
Close #FileNum

Cancel = False

End Sub



QUESTIONS::::::::::::::::::::::::::::::

Q1 Est-ce possible de copier l'info dans un onglet
que je vais nommer «suivi» plutôt que dans un fichier
log.txt?
l'enregistrement le plus récent s'inscrit dans la cellule
A1?? 2e plus récent dans A2 ainsi de suite...


Q2 Le nom de l'usager et de l'ordinateur n'apparaissent
pas dans le fichier log.

Merci de votre aide!

********************fin*****************************
Avatar
Denis Michon
Bonjour Bob,

La première ligne de la feuille "Suivi" est réservé aux étiquettes de colonnes que tu devras insérer.

a = Heure d'ouverture
B = Heure de Fermeture
C = Chemin Complet et nom du fichier
D = Nom de logon de l'usager
E = Nom de l'ordinateur


Dans le ThisWorkbook de ton classeur :

'--------------------
Private Sub Workbook_Open()

LeSuivi

End Sub
'--------------------

Private Sub Workbook_BeforeClose(Cancel As Boolean)

With Worksheets("Suivi")
A = .Range("A65536").End(xlUp).Row
.Range("B" & A).NumberFormat = "yyyy-mm-dd hh:mm:ss"
.Range("B" & A) = Format(Now, "yyyy-mm-dd hh:mm:ss")
.Columns("B").AutoFit
End With

End Sub
'--------------------

Et dans un module standard :

'--------------------
Sub LeSuivi()

With Worksheets("Suivi")
A = .Range("A65536").End(xlUp)(2).Row
.Range("A" & A).NumberFormat = "yyyy-mm-dd hh:mm:ss"
.Range("A" & A) = Format(Now, "yyyy-mm-dd hh:mm:ss")
.Range("C" & A) = ThisWorkbook.FullName
.Range("D" & A) = Environ("LOGONSERVER")
.Range("E" & A) = Environ("COMPUTERNAME")
.Columns("A:E").AutoFit
End With

End Sub
'--------------------


Salutations!





"Bob" a écrit dans le message de news:0d7e01c3b2c5$38d6d290$
Mise au point!!!
Bonjour à tous,

J'ai le script suivant qui me permet de suivre la trace
des changements dans un fichier. Toutefois le script
inscrit les infos dans un fichier «log.txt». Voir les
questions en dessous du script.

**********SCRIPT*****************
Private Sub Workbook_Open()


Dim FileNum As Long

FileNum = FreeFile
Open ThisWorkbook.Path & "log.txt" For Append As #FileNum

Print #FileNum, ThisWorkbook.FullName & " OPENED: " & _
Format(Now, "yyyy-mm-dd hh:mm:ss") & " User: " & _
OSUserName & " from computer: " & OSMachineName
Close #FileNum
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim FileNum As Long

FileNum = FreeFile
Open ThisWorkbook.Path & "log.txt" For Append As #FileNum

Print #FileNum, ThisWorkbook.FullName & " CLOSED: " & _
Format(Now, "yyyy-mm-dd hh:mm:ss") & " User: " & _
OSUserName & " from computer: " & OSMachineName
Close #FileNum

Cancel = False

End Sub



QUESTIONS::::::::::::::::::::::::::::::

Q1 Est-ce possible de copier l'info dans un onglet
que je vais nommer «suivi» plutôt que dans un fichier
log.txt?
l'enregistrement le plus récent s'inscrit dans la cellule
A1?? 2e plus récent dans A2 ainsi de suite...


Q2 Le nom de l'usager et de l'ordinateur n'apparaissent
pas dans le fichier log.

Merci de votre aide!

********************fin*****************************
Avatar
Bob
Ça fonctionne!!!!!!!!!!!!!!!!!

Merci à tous pour votre aide!!!!!!!!!!!!!!!!


-----Message d'origine-----
Bonjour Bob,

La première ligne de la feuille "Suivi" est réservé aux
étiquettes de colonnes que tu devras insérer.


a = Heure d'ouverture
B = Heure de Fermeture
C = Chemin Complet et nom du fichier
D = Nom de logon de l'usager
E = Nom de l'ordinateur


Dans le ThisWorkbook de ton classeur :

'--------------------
Private Sub Workbook_Open()

LeSuivi

End Sub
'--------------------

Private Sub Workbook_BeforeClose(Cancel As Boolean)

With Worksheets("Suivi")
A = .Range("A65536").End(xlUp).Row
.Range("B" & A).NumberFormat = "yyyy-mm-dd hh:mm:ss"
.Range("B" & A) = Format(Now, "yyyy-mm-dd hh:mm:ss")
.Columns("B").AutoFit
End With

End Sub
'--------------------

Et dans un module standard :

'--------------------
Sub LeSuivi()

With Worksheets("Suivi")
A = .Range("A65536").End(xlUp)(2).Row
.Range("A" & A).NumberFormat = "yyyy-mm-dd hh:mm:ss"
.Range("A" & A) = Format(Now, "yyyy-mm-dd hh:mm:ss")
.Range("C" & A) = ThisWorkbook.FullName
.Range("D" & A) = Environ("LOGONSERVER")
.Range("E" & A) = Environ("COMPUTERNAME")
.Columns("A:E").AutoFit
End With

End Sub
'--------------------


Salutations!





"Bob" a écrit dans
le message de news:0d7e01c3b2c5$38d6d290

$
Mise au point!!!
Bonjour à tous,

J'ai le script suivant qui me permet de suivre la trace
des changements dans un fichier. Toutefois le script
inscrit les infos dans un fichier «log.txt». Voir les
questions en dessous du script.

**********SCRIPT*****************
Private Sub Workbook_Open()


Dim FileNum As Long

FileNum = FreeFile
Open ThisWorkbook.Path & "log.txt" For Append As
#FileNum


Print #FileNum, ThisWorkbook.FullName & " OPENED: " & _
Format(Now, "yyyy-mm-dd hh:mm:ss") & " User: " & _
OSUserName & " from computer: " & OSMachineName
Close #FileNum
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim FileNum As Long

FileNum = FreeFile
Open ThisWorkbook.Path & "log.txt" For Append As
#FileNum


Print #FileNum, ThisWorkbook.FullName & " CLOSED: " & _
Format(Now, "yyyy-mm-dd hh:mm:ss") & " User: " & _
OSUserName & " from computer: " & OSMachineName
Close #FileNum

Cancel = False

End Sub



QUESTIONS::::::::::::::::::::::::::::::

Q1 Est-ce possible de copier l'info dans un onglet
que je vais nommer «suivi» plutôt que dans un fichier
log.txt?
l'enregistrement le plus récent s'inscrit dans la cellule
A1?? 2e plus récent dans A2 ainsi de suite...


Q2 Le nom de l'usager et de l'ordinateur n'apparaissent
pas dans le fichier log.

Merci de votre aide!

********************fin*****************************



.



1 2