J'ai un fichier Excel dont les en-tête de colonne sont : civilités, prénoms,
noms, adresses, et plein d'autres colonnes où il y a "O" ou "N" si la
personne fait partie de telle ou telle groupe, si elle a été invité à telle
ou telle réunion, si elle a répondu ou non à la convocation, si elle s'est
fait représenté, etc.
Comme plusieurs utilisateurs interviennent sur ce fichier qui est sur le
serveur, je souhaiterai créer une colonne qui me donne le nom du dernier
utilisateur qui a fait une mise à jour sur un enregistrement.
Comment faire (macro ou toute proposition bienvenue)?
Merci d'avance
Reda
"reda" a écrit dans le message de news:c7ojka$bfa$
Bonjour,
J'ai un fichier Excel dont les en-tête de colonne sont : civilités, prénoms, noms, adresses, et plein d'autres colonnes où il y a "O" ou "N" si la personne fait partie de telle ou telle groupe, si elle a été invité à telle ou telle réunion, si elle a répondu ou non à la convocation, si elle s'est fait représenté, etc. Comme plusieurs utilisateurs interviennent sur ce fichier qui est sur le serveur, je souhaiterai créer une colonne qui me donne le nom du dernier utilisateur qui a fait une mise à jour sur un enregistrement. Comment faire (macro ou toute proposition bienvenue)? Merci d'avance Reda
Bonsoir,
Avec une cellule nommée "quisauve"
Dans le module Thisworkbook du classseur :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
[quisauve] = Application.UserName
End Sub
"reda" <reda@reda.fr> a écrit dans le message de news:c7ojka$bfa$1@news.tiscali.fr...
Bonjour,
J'ai un fichier Excel dont les en-tête de colonne sont : civilités, prénoms,
noms, adresses, et plein d'autres colonnes où il y a "O" ou "N" si la
personne fait partie de telle ou telle groupe, si elle a été invité à telle
ou telle réunion, si elle a répondu ou non à la convocation, si elle s'est
fait représenté, etc.
Comme plusieurs utilisateurs interviennent sur ce fichier qui est sur le
serveur, je souhaiterai créer une colonne qui me donne le nom du dernier
utilisateur qui a fait une mise à jour sur un enregistrement.
Comment faire (macro ou toute proposition bienvenue)?
Merci d'avance
Reda
"reda" a écrit dans le message de news:c7ojka$bfa$
Bonjour,
J'ai un fichier Excel dont les en-tête de colonne sont : civilités, prénoms, noms, adresses, et plein d'autres colonnes où il y a "O" ou "N" si la personne fait partie de telle ou telle groupe, si elle a été invité à telle ou telle réunion, si elle a répondu ou non à la convocation, si elle s'est fait représenté, etc. Comme plusieurs utilisateurs interviennent sur ce fichier qui est sur le serveur, je souhaiterai créer une colonne qui me donne le nom du dernier utilisateur qui a fait une mise à jour sur un enregistrement. Comment faire (macro ou toute proposition bienvenue)? Merci d'avance Reda
Patrick
Bonsoir,
J'ai lu avec attentio votre réponse pouvez vous me donner + de précisions, j'ai fait un copier coller là ou vous le dites, et après rien ne se passe que fut il faire pour voir apparaitre le nom, je suis bien sur en partagé, il doit me manquer une précision et une action !! Peut etre sur la cellule après avoir nomée la cellule quisauve que faire ?? (j'ai fait J23)
Merci et bonne nuit
Patrick
-----Message d'origine----- Bonsoir, Avec une cellule nommée "quisauve" Dans le module Thisworkbook du classseur :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
"reda" a écrit dans le message de news:c7ojka$bfa$
Bonjour,
J'ai un fichier Excel dont les en-tête de colonne sont : civilités, prénoms,
noms, adresses, et plein d'autres colonnes où il y a "O" ou "N" si la
personne fait partie de telle ou telle groupe, si elle a été invité à telle
ou telle réunion, si elle a répondu ou non à la convocation, si elle s'est
fait représenté, etc. Comme plusieurs utilisateurs interviennent sur ce fichier qui est sur le
serveur, je souhaiterai créer une colonne qui me donne le nom du dernier
utilisateur qui a fait une mise à jour sur un enregistrement.
Comment faire (macro ou toute proposition bienvenue)? Merci d'avance Reda
.
Bonsoir,
J'ai lu avec attentio votre réponse pouvez vous me donner
+ de précisions, j'ai fait un copier coller là ou vous le
dites, et après rien ne se passe que fut il faire pour
voir apparaitre le nom, je suis bien sur en partagé, il
doit me manquer une précision et une action !! Peut etre
sur la cellule après avoir nomée la cellule quisauve que
faire ?? (j'ai fait J23)
Merci et bonne nuit
Patrick
-----Message d'origine-----
Bonsoir,
Avec une cellule nommée "quisauve"
Dans le module Thisworkbook du classseur :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As
Boolean, Cancel As Boolean)
J'ai lu avec attentio votre réponse pouvez vous me donner + de précisions, j'ai fait un copier coller là ou vous le dites, et après rien ne se passe que fut il faire pour voir apparaitre le nom, je suis bien sur en partagé, il doit me manquer une précision et une action !! Peut etre sur la cellule après avoir nomée la cellule quisauve que faire ?? (j'ai fait J23)
Merci et bonne nuit
Patrick
-----Message d'origine----- Bonsoir, Avec une cellule nommée "quisauve" Dans le module Thisworkbook du classseur :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
"reda" a écrit dans le message de news:c7ojka$bfa$
Bonjour,
J'ai un fichier Excel dont les en-tête de colonne sont : civilités, prénoms,
noms, adresses, et plein d'autres colonnes où il y a "O" ou "N" si la
personne fait partie de telle ou telle groupe, si elle a été invité à telle
ou telle réunion, si elle a répondu ou non à la convocation, si elle s'est
fait représenté, etc. Comme plusieurs utilisateurs interviennent sur ce fichier qui est sur le
serveur, je souhaiterai créer une colonne qui me donne le nom du dernier
utilisateur qui a fait une mise à jour sur un enregistrement.
Comment faire (macro ou toute proposition bienvenue)? Merci d'avance Reda
.
sabatier
je verrai bien aussi cela, dans le même module et en nommant une autre cellule :
Private Sub Workbook_BeforeClose(Cancel As Boolean) [quisauvequand] = "Dernière mise à jour le " & Format(Date, _ "dd/mm/yyyy") End Sub
jps
Patrick a écrit:
Bonsoir,
J'ai lu avec attentio votre réponse pouvez vous me donner + de précisions, j'ai fait un copier coller là ou vous le dites, et après rien ne se passe que fut il faire pour voir apparaitre le nom, je suis bien sur en partagé, il doit me manquer une précision et une action !! Peut etre sur la cellule après avoir nomée la cellule quisauve que faire ?? (j'ai fait J23)
Merci et bonne nuit
Patrick
-----Message d'origine----- Bonsoir, Avec une cellule nommée "quisauve" Dans le module Thisworkbook du classseur :
noms, adresses, et plein d'autres colonnes où il y
a "O" ou "N" si la
personne fait partie de telle ou telle groupe, si elle
a été invité à telle
ou telle réunion, si elle a répondu ou non à la
convocation, si elle s'est
fait représenté, etc. Comme plusieurs utilisateurs interviennent sur ce
fichier qui est sur le
serveur, je souhaiterai créer une colonne qui me donne
le nom du dernier
utilisateur qui a fait une mise à jour sur un
enregistrement.
Comment faire (macro ou toute proposition bienvenue)? Merci d'avance Reda
.
je verrai bien aussi cela, dans le même module et en nommant une autre
cellule :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
[quisauvequand] = "Dernière mise à jour le " & Format(Date, _
"dd/mm/yyyy")
End Sub
jps
Patrick a écrit:
Bonsoir,
J'ai lu avec attentio votre réponse pouvez vous me donner
+ de précisions, j'ai fait un copier coller là ou vous le
dites, et après rien ne se passe que fut il faire pour
voir apparaitre le nom, je suis bien sur en partagé, il
doit me manquer une précision et une action !! Peut etre
sur la cellule après avoir nomée la cellule quisauve que
faire ?? (j'ai fait J23)
Merci et bonne nuit
Patrick
-----Message d'origine-----
Bonsoir,
Avec une cellule nommée "quisauve"
Dans le module Thisworkbook du classseur :
je verrai bien aussi cela, dans le même module et en nommant une autre cellule :
Private Sub Workbook_BeforeClose(Cancel As Boolean) [quisauvequand] = "Dernière mise à jour le " & Format(Date, _ "dd/mm/yyyy") End Sub
jps
Patrick a écrit:
Bonsoir,
J'ai lu avec attentio votre réponse pouvez vous me donner + de précisions, j'ai fait un copier coller là ou vous le dites, et après rien ne se passe que fut il faire pour voir apparaitre le nom, je suis bien sur en partagé, il doit me manquer une précision et une action !! Peut etre sur la cellule après avoir nomée la cellule quisauve que faire ?? (j'ai fait J23)
Merci et bonne nuit
Patrick
-----Message d'origine----- Bonsoir, Avec une cellule nommée "quisauve" Dans le module Thisworkbook du classseur :
noms, adresses, et plein d'autres colonnes où il y
a "O" ou "N" si la
personne fait partie de telle ou telle groupe, si elle
a été invité à telle
ou telle réunion, si elle a répondu ou non à la
convocation, si elle s'est
fait représenté, etc. Comme plusieurs utilisateurs interviennent sur ce
fichier qui est sur le
serveur, je souhaiterai créer une colonne qui me donne
le nom du dernier
utilisateur qui a fait une mise à jour sur un
enregistrement.
Comment faire (macro ou toute proposition bienvenue)? Merci d'avance Reda
.
Philippe.R
Re, Il suffit de lancer un enregistrement du classeur (1 click sur la disquette de la barre standard) pour voir apparaître le nom d'utilisateur de l'application ; si tu souhaites avoir le nom d'utilisateur de la session, tu remplaces : Application.UserName par : Environ("UserName") -- Amicales Salutations Retirer A_S_ pour répondre. XL 97 / 2000 / 2002 Pour suivre le forum : news://msnews.microsoft.com/microsoft.public.fr.excel (Voulez-vous vous abonner ? -> Oui)
"Patrick" a écrit dans le message de news:afe101c436c9$7e657040$ Bonsoir,
J'ai lu avec attentio votre réponse pouvez vous me donner + de précisions, j'ai fait un copier coller là ou vous le dites, et après rien ne se passe que fut il faire pour voir apparaitre le nom, je suis bien sur en partagé, il doit me manquer une précision et une action !! Peut etre sur la cellule après avoir nomée la cellule quisauve que faire ?? (j'ai fait J23)
Merci et bonne nuit
Patrick
-----Message d'origine----- Bonsoir, Avec une cellule nommée "quisauve" Dans le module Thisworkbook du classseur :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
"reda" a écrit dans le message de news:c7ojka$bfa$
Bonjour,
J'ai un fichier Excel dont les en-tête de colonne sont : civilités, prénoms,
noms, adresses, et plein d'autres colonnes où il y a "O" ou "N" si la
personne fait partie de telle ou telle groupe, si elle a été invité à telle
ou telle réunion, si elle a répondu ou non à la convocation, si elle s'est
fait représenté, etc. Comme plusieurs utilisateurs interviennent sur ce fichier qui est sur le
serveur, je souhaiterai créer une colonne qui me donne le nom du dernier
utilisateur qui a fait une mise à jour sur un enregistrement.
Comment faire (macro ou toute proposition bienvenue)? Merci d'avance Reda
.
Re,
Il suffit de lancer un enregistrement du classeur (1 click sur la disquette de la barre standard) pour
voir apparaître le nom d'utilisateur de l'application ; si tu souhaites avoir le nom d'utilisateur de la
session, tu remplaces :
Application.UserName
par :
Environ("UserName")
--
Amicales Salutations
Retirer A_S_ pour répondre.
XL 97 / 2000 / 2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)
"Patrick" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:afe101c436c9$7e657040$a101280a@phx.gbl...
Bonsoir,
J'ai lu avec attentio votre réponse pouvez vous me donner
+ de précisions, j'ai fait un copier coller là ou vous le
dites, et après rien ne se passe que fut il faire pour
voir apparaitre le nom, je suis bien sur en partagé, il
doit me manquer une précision et une action !! Peut etre
sur la cellule après avoir nomée la cellule quisauve que
faire ?? (j'ai fait J23)
Merci et bonne nuit
Patrick
-----Message d'origine-----
Bonsoir,
Avec une cellule nommée "quisauve"
Dans le module Thisworkbook du classseur :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As
Boolean, Cancel As Boolean)
Re, Il suffit de lancer un enregistrement du classeur (1 click sur la disquette de la barre standard) pour voir apparaître le nom d'utilisateur de l'application ; si tu souhaites avoir le nom d'utilisateur de la session, tu remplaces : Application.UserName par : Environ("UserName") -- Amicales Salutations Retirer A_S_ pour répondre. XL 97 / 2000 / 2002 Pour suivre le forum : news://msnews.microsoft.com/microsoft.public.fr.excel (Voulez-vous vous abonner ? -> Oui)
"Patrick" a écrit dans le message de news:afe101c436c9$7e657040$ Bonsoir,
J'ai lu avec attentio votre réponse pouvez vous me donner + de précisions, j'ai fait un copier coller là ou vous le dites, et après rien ne se passe que fut il faire pour voir apparaitre le nom, je suis bien sur en partagé, il doit me manquer une précision et une action !! Peut etre sur la cellule après avoir nomée la cellule quisauve que faire ?? (j'ai fait J23)
Merci et bonne nuit
Patrick
-----Message d'origine----- Bonsoir, Avec une cellule nommée "quisauve" Dans le module Thisworkbook du classseur :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
"reda" a écrit dans le message de news:c7ojka$bfa$
Bonjour,
J'ai un fichier Excel dont les en-tête de colonne sont : civilités, prénoms,
noms, adresses, et plein d'autres colonnes où il y a "O" ou "N" si la
personne fait partie de telle ou telle groupe, si elle a été invité à telle
ou telle réunion, si elle a répondu ou non à la convocation, si elle s'est
fait représenté, etc. Comme plusieurs utilisateurs interviennent sur ce fichier qui est sur le
serveur, je souhaiterai créer une colonne qui me donne le nom du dernier
utilisateur qui a fait une mise à jour sur un enregistrement.
Comment faire (macro ou toute proposition bienvenue)? Merci d'avance Reda
.
Herdet
Bonsoir Reda, Sur un serveur d'entreprise (ou un PC particulier), je pense qu'il est plus fiable de récupérer le Login de l'utilisateur par la méthode GetUserName décrite ci-dessous. Résultat à comparer en réseau avec "Application.UserName" de l'ami Philippe Cordiales salutations. Robert Dezan ----------------------------------------------------------------------- Dans un module écrire :
Declare Function WNetGetUser Lib "mpr.dll" Alias "WNetGetUserA" (ByVal lpName As String, _ ByVal lpUserName As String, lpnLength As Long) As Long Const NoError = 0 ' GetUserName : récupération du code login des utilisateurs Sub Recup_Login() Nom_Login = UCase$(GetUserName) Msgbox Nom_Login End Sub
Function GetUserName() Const lpnLength As Integer = 255 Dim status As Integer Dim lpName, lpUserName As String lpUserName = Space$(lpnLength + 1) status = WNetGetUser(lpName, lpUserName, lpnLength) If status = NoError Then lpUserName = Left$(lpUserName, InStr(lpUserName, Chr(0)) - 1) Else ' MsgBox "Nom du login pas trouvé." End End If GetUserName = lpUserName End Function ---------------------------------------------------------------------------- ---------
"reda" a écrit dans le message de news: c7ojka$bfa$
Bonjour,
J'ai un fichier Excel dont les en-tête de colonne sont : civilités, prénoms,
noms, adresses, et plein d'autres colonnes où il y a "O" ou "N" si la personne fait partie de telle ou telle groupe, si elle a été invité à telle
ou telle réunion, si elle a répondu ou non à la convocation, si elle s'est fait représenté, etc. Comme plusieurs utilisateurs interviennent sur ce fichier qui est sur le serveur, je souhaiterai créer une colonne qui me donne le nom du dernier utilisateur qui a fait une mise à jour sur un enregistrement. Comment faire (macro ou toute proposition bienvenue)? Merci d'avance Reda
Bonsoir Reda,
Sur un serveur d'entreprise (ou un PC particulier), je pense qu'il est plus
fiable de récupérer le Login de l'utilisateur par la méthode GetUserName
décrite ci-dessous.
Résultat à comparer en réseau avec "Application.UserName" de l'ami Philippe
Cordiales salutations.
Robert Dezan
-----------------------------------------------------------------------
Dans un module écrire :
Declare Function WNetGetUser Lib "mpr.dll" Alias "WNetGetUserA" (ByVal
lpName As String, _
ByVal lpUserName As String, lpnLength As Long) As Long
Const NoError = 0
' GetUserName : récupération du code login des utilisateurs
Sub Recup_Login()
Nom_Login = UCase$(GetUserName)
Msgbox Nom_Login
End Sub
Function GetUserName()
Const lpnLength As Integer = 255
Dim status As Integer
Dim lpName, lpUserName As String
lpUserName = Space$(lpnLength + 1)
status = WNetGetUser(lpName, lpUserName, lpnLength)
If status = NoError Then
lpUserName = Left$(lpUserName, InStr(lpUserName, Chr(0)) - 1)
Else
' MsgBox "Nom du login pas trouvé."
End
End If
GetUserName = lpUserName
End Function
----------------------------------------------------------------------------
---------
"reda" <reda@reda.fr> a écrit dans le message de news:
c7ojka$bfa$1@news.tiscali.fr...
Bonjour,
J'ai un fichier Excel dont les en-tête de colonne sont : civilités,
prénoms,
noms, adresses, et plein d'autres colonnes où il y a "O" ou "N" si la
personne fait partie de telle ou telle groupe, si elle a été invité à
telle
ou telle réunion, si elle a répondu ou non à la convocation, si elle s'est
fait représenté, etc.
Comme plusieurs utilisateurs interviennent sur ce fichier qui est sur le
serveur, je souhaiterai créer une colonne qui me donne le nom du dernier
utilisateur qui a fait une mise à jour sur un enregistrement.
Comment faire (macro ou toute proposition bienvenue)?
Merci d'avance
Reda
Bonsoir Reda, Sur un serveur d'entreprise (ou un PC particulier), je pense qu'il est plus fiable de récupérer le Login de l'utilisateur par la méthode GetUserName décrite ci-dessous. Résultat à comparer en réseau avec "Application.UserName" de l'ami Philippe Cordiales salutations. Robert Dezan ----------------------------------------------------------------------- Dans un module écrire :
Declare Function WNetGetUser Lib "mpr.dll" Alias "WNetGetUserA" (ByVal lpName As String, _ ByVal lpUserName As String, lpnLength As Long) As Long Const NoError = 0 ' GetUserName : récupération du code login des utilisateurs Sub Recup_Login() Nom_Login = UCase$(GetUserName) Msgbox Nom_Login End Sub
Function GetUserName() Const lpnLength As Integer = 255 Dim status As Integer Dim lpName, lpUserName As String lpUserName = Space$(lpnLength + 1) status = WNetGetUser(lpName, lpUserName, lpnLength) If status = NoError Then lpUserName = Left$(lpUserName, InStr(lpUserName, Chr(0)) - 1) Else ' MsgBox "Nom du login pas trouvé." End End If GetUserName = lpUserName End Function ---------------------------------------------------------------------------- ---------
"reda" a écrit dans le message de news: c7ojka$bfa$
Bonjour,
J'ai un fichier Excel dont les en-tête de colonne sont : civilités, prénoms,
noms, adresses, et plein d'autres colonnes où il y a "O" ou "N" si la personne fait partie de telle ou telle groupe, si elle a été invité à telle
ou telle réunion, si elle a répondu ou non à la convocation, si elle s'est fait représenté, etc. Comme plusieurs utilisateurs interviennent sur ce fichier qui est sur le serveur, je souhaiterai créer une colonne qui me donne le nom du dernier utilisateur qui a fait une mise à jour sur un enregistrement. Comment faire (macro ou toute proposition bienvenue)? Merci d'avance Reda