Récupérer le nom et le prénom dans un liste déroulante modifiable en fonction du User

Bougla972

XLDnaute Occasionnel
Bonjour à tous,

Je cherche à récupérer à l'ouverture du Userform le nom et le prénom de l'utlisateur dans la liste déroulante (Combo1). J'ai en feuille "Données" les informations concernant les personnes => Colonnes A à C (User / Nom & Prénom / Responsable).

Merci d'avance pour votre aide précieuse !
 

Fichiers joints

Modeste geedee

XLDnaute Barbatruc
Re : Récupérer le nom et le prénom dans un liste déroulante modifiable en fonction du

Bonsour® Bougla972
Code:
Private Declare Function w32_WNetGetUser Lib "mpr.dll" Alias "WNetGetUserA" (ByVal lpszLocalName As String, ByVal lpszUserName As String, lpcchBuffer As Long) As Long
' --------------------------------
Public currentuser As String
' *** ce sera ce nom qu'il faudra utiliser ulterieurement ***
' userform1.textbox1.value=currentuser
'---------------------------------
Sub getuser()

   ' récupere le nom de l'utilisateur réseau/groupe de travail, Nom du PC
   '***************************************************************************
    Dim lpUserName As String, lpnLength As Long, lResult As Long
    'Create a buffer
    lpUserName = String(256, Chr$(0))
    'Get the network user
    lResult = w32_WNetGetUser(vbNullString, lpUserName, 256)
    If lResult = 0 Then
        lpUserName = Left$(lpUserName, InStr(1, lpUserName, Chr$(0)) - 1)
        MsgBox "The user's Network Logon Name is " + lpUserName + ".", vbInformation + vbOKOnly, "Logon " & Application.UserName
        ' application.username est le nom de l'utilisateur EXCEL (options avancées)
        '*********************************************************************************
        currentuser = lpUserName
    Else
    MsgBox "No user found !", vbExclamation + vbOKOnly, "Logon"
    End If
End Sub
 

Bougla972

XLDnaute Occasionnel
Re : Récupérer le nom et le prénom dans un liste déroulante modifiable en fonction du

Merci pour ta réponse Modeste geedee !

Mais ce n'est pas tout à fait ce que je souhaite. Je souhaite faire apparaitre le Nom & Prénom du User dans la liste déroulante (Combo1) à l'ouverture du Userform. Dans l'onglet "Données", les informations Nom et Prénom par rapport au User.

Par rapport au User de l'utilisateur la liste déroulante me cible le Nom & Prénom correspondant soit en colonne B de la feuille "Données"... J'espère avoir été suffisement clair :confused:

Merci d'avance !
 

Robert

XLDnaute Barbatruc
Re : Récupérer le nom et le prénom dans un liste déroulante modifiable en fonction du

Bonjour le fil, bonjour le forum,

Essaie comme ça :
Code:
Private Sub UserForm_Initialize()
Dim f As Object 'déclare la variable f
Set f = Sheets("Données")
Me.ComboBox1.List = f.Range("B2:B" & f.Cells(Application.Rows.Count, 2).End(xlUp).Row).Value
End Sub
 

Bougla972

XLDnaute Occasionnel
Re : Récupérer le nom et le prénom dans un liste déroulante modifiable en fonction du

Merci Robert!... mais ce n'est pas ce que j'attends.

Je souhaite qu'à l'ouverture du Userform, la combo m'affiche le Nom & Prénom (Données Colonne B) en fonction du User qui ouvre ce Userform (Données Colone A)correspondant sans pour autant le sélectionner manuellement.
Peut être dois je utiliser une zone de texte simple ?

A vous lire
 

david84

XLDnaute Barbatruc
Re : Récupérer le nom et le prénom dans un liste déroulante modifiable en fonction du

Bonjour tout le monde,
ta demande et explications ne sont pas claires.
Si tu veux récupérer le nom d'utilisateur dans ta combo (pas logique d'utiliser une combo pour cela mais bon...), soit tu récupères le résultat de la solution proposée par Modeste geedee, soit tu peux utiliser
Me.ComboBox1.Value = Application.UserName
A+
 

Robert

XLDnaute Barbatruc
Re : Récupérer le nom et le prénom dans un liste déroulante modifiable en fonction du

Bonsoir le fil, bonsoir le forum,

Désolé Bougla, j'avais pas bien compris. En pièce jointe une proposition à adaper avec le code ci-dessous :
Code:
Private Sub UserForm_Initialize()
Dim o As Object 'déclare la variable o (onglet)
Dim r As Range 'déclare la variable r (Recherche)

Set o = Sheets("Données") 'définit l'onglet f
Set r = o.Columns(1).Find(Application.UserName, , xlValues, xlWhole) 'définit la recherche r
If Not r Is Nothing Then 'condition : si il existe au moins une occurrence trouvée
    Me.TextBox1.Value = r.Offset(0, 1).Value 'affiche le Nom_Prénom correspondant
Else 'sinon
    MsgBox "Utilisateur non listé !" 'message
End If 'fin de la condition
End Sub
Le fichier :
 

Fichiers joints

Bougla972

XLDnaute Occasionnel
Re : Récupérer le nom et le prénom dans un liste déroulante modifiable en fonction du

Merci bcq Robert c'est exactement ce que je souhaitais...! :rolleyes: A défault d'avoir une combo :p
Pour répondre à David, je souhaitais utiliser une combo pour laisser le choix à l'utilisateur de changer d'individu, au cas où il serait néccessaire de rentrer des informations d'une autre personne...mais tu as raison sur le fait que cela peut paraître illogique !

Merci à tous pour votre participation active !
A+
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas