Récuperer le USERNAME dans une cellule + formatage

Bonjour,

Je remarque que quand les gens saisissent des informations sur EXCEL leur nom/prénom (login WINDOWS) se met en « dernier enregistrement ».

J’aimerai que à chaque entrée dans une ligne excel, une formule tape le nom/prénom de la session de la même manière, es-ce possible ?

J’aimerai aussi que les gens qui font des copier/coller ne « pète pas le classeur » en changeant la police + taille d’écriture… Comment faire ?

Exemple fichier joint, je saisie la ligne 2, la colonne VOTRE NOM s'incrèmente,

mon collègue la ligne 3, son nom de session s'incrèmente...

Merci

1exemple.xlsx (11.66 Ko)

Je t'ai répondu sur l'autre post

Application.UserName

A+ François

Super merci.

sur un PC configuré entreprise Application.UserName rend une information entré par l'utilisateur soit n'importe quoi, en sachant que la donnée est vide à l'installation. Cette donnée remontée n'apporte pas grand chose dans mon cas. Dans mon entreprise je préfère croiser le résultat de Environ("UserProfile") et d'un script Powershell Get-User sur le Userprofile pour récupérer NOM et PRENOM

powershell -command "Get-ADUser -Filter {sAMAccountName -eq 'user profile'}"

Tu aurais un exemple ? Ca m'intéresse pour quand je fait des tableaux tout basique de ce type, comment implémenter à chaque saisie de ligne le nom de celui qui saisit automatiquement ?

1exemple.xlsx (11.66 Ko)

Juste pour info, merci :)

Bonjour Fabiola

Selon les entreprises, la stratégie d'utilisation des ordinateurs peut bloquer le service powershell ou les VB Scripts.

J'ai une solution pour chacune de ces technologies pouvant être interfacées via VBA. (pas encore testé en VBA)

Me dire après test sur console DOS dans Windows ou/et information auprès de la direction informatique le cas échéant.

Tester Powershell "> powershell -command "$PSVersionTable"

Tester VBScript

Créer un fichier Echo.vbs avec Notepad : avec une ligne WScript.Echo "coucou" et lancer la commande après l'invite >cscript echo.vbs

Si le nombre d'utilisateurs concerné est limité. Il est peut-être suffisant de leurs demander de mettre a jour l'information Username dans office.

Bonjour,

j'obtiens ceci, mais via une macro qui serait appelé depuis une "case" sous Excel, on peux pas récupérer mon username ?

Exemple : Tu crée une macro nommé identification, et dans les cases de la colonne E, je met un =fonction.identification() ma question peux paraitre bête mais je débute vraiment en programmation EXCEL :D

Merci.

sans titrevba

Bonjour Fabiola

Dans Visual Basic Engine VBE :

Insérer un module et coller

Function USERNAME(rg As Range)
Dim s As String
s = VBA.Environ("USERPROFILE")
USERNAME = Mid(s, InStrRev(s, "\") + 1)
End Function

Dans une cellule taper:

=USERNAME(A1)

Function USERNAME(rg As Range)
Dim s As String
If Application.Username = "" Then
s = VBA.Environ("USERPROFILE")
USERNAME = Mid(s, InStrRev(s, "\") + 1)
Else
USERNAME = Application.UserName
End If
End Function
'Ajouter dans VBE la référence à Microsoft Outlook
Function CurrentUser(rg As Range)
 Dim myNamespace 'As Outlook.Namespace
 Dim EmailItem 'As Outlook.MailItem
 Set OL = CreateObject("Outlook.Application")
Set EmailItem = OL.CreateItem(0) 'olMailItem)
DisplayCurrentUser = EmailItem.GetInspector.Session.CurrentUser
Set EmailItem = Nothing
Set OL = Nothing
End Function

Autre solution : autre fonction: = CurrentUser(A1)

Bonjour, merci, pourrais-tu me donner un exemple stp ? Avec mon fichier d'origine ?

Merci encore, je décrypterai ensuite ce que tu as fait.

Rechercher des sujets similaires à "recuperer username formatage"