A voir également:
- Vba tester existence utilisateur dans AD
- Flash drive tester - Télécharger - Divers Utilitaires
- Tester son pc - Guide
- Tester composant pc - Guide
- Tester batterie pc portable - Guide
- Tester signal wifi gratuit - Guide
7 réponses
Merci de m'aider c'est assez urgent
Toutes mes références sont activées, et je n'ai aucune information remplissant le textbox2.
comment faire?
Private Sub textbox1_afterupdate() Dim conn As New ADODB.Connection Dim rs As ADODB.Recordset Dim oRoot As IADs Dim oDomain As IADs Dim sBase As String Dim sFilter As String Dim sDomain As String Dim sAttribs As String Dim sDepth As String Dim sQuery As String Dim sAns As String Dim user As IADsUser On Error GoTo ErrHandler: Set oRoot = GetObject("LDAP://rootDSE") 'work in the default domain sDomain = oRoot.Get("defaultNamingContext") Set oDomain = GetObject("LDAP://" & sDomain) sBase = "<" & oDomain.ADsPath & ">" sFilter = "(&(objectCategory=person)(objectClass=user)(name=" _ & LoginName & "))" sAttribs = "adsPath" sDepth = "subTree" sQuery = sBase & ";" & sFilter & ";" & sAttribs & ";" & sDepth conn.Open _ "Data Source=Active Directory Provider;Provider=ADsDSOObject" Set rs = conn.Execute(sQuery) If Not rs.EOF Then Set user = GetObject(rs("adsPath")) With user sAns = "First Name: " & .FirstName & vbCrLf sAns = sAns & "Last Name " & .LastName & vbCrLf sAns = sAns & "Employee ID: " & .EmployeeID & vbCrLf sAns = sAns & "Title: " & .Title & vbCrLf sAns = sAns & "Division: " & .Division & vbCrLf sAns = sAns & "Department: " & .Department & vbCrLf End With End If UserInfo = sAns ErrHandler: On Error Resume Next If Not rs Is Nothing Then If rs.State <> 0 Then rs.Close Set rs = Nothing End If If Not conn Is Nothing Then If conn.State <> 0 Then conn.Close Set conn = Nothing End If TextBox2.Value = UserInfo 'ou msgbox UserInfo Set oRoot = Nothing Set oDomain = Nothing End If End Sub
Toutes mes références sont activées, et je n'ai aucune information remplissant le textbox2.
comment faire?
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
12 juin 2009 à 11:15
12 juin 2009 à 11:15
bonjour,
ce Vbscript à aménager pourrait peut-être t'aider
source:
http://www.activexperts.com/activmonitor/windowsmanagement/scripts/activedirectory/user/retrieving/
Etant sur monoposte, je ne peux ni tester, ni t'aider plus, désolé (recordset.recordcount m'inquiète un peu...)
ce Vbscript à aménager pourrait peut-être t'aider
strUserName = "kenmyer" dtStart = TimeValue(Now()) Set objConnection = CreateObject("ADODB.Connection") objConnection.Open "Provider=ADsDSOObject;" Set objCommand = CreateObject("ADODB.Command") objCommand.ActiveConnection = objConnection objCommand.CommandText = _ ";(&(objectCategory=User)" & _ "(samAccountName=" & strUserName & "));samAccountName;subtree" Set objRecordSet = objCommand.Execute If objRecordset.RecordCount = 0 Then WScript.Echo "sAMAccountName: " & strUserName & " does not exist." Else WScript.Echo strUserName & " exists." End If objConnection.Close
source:
http://www.activexperts.com/activmonitor/windowsmanagement/scripts/activedirectory/user/retrieving/
Etant sur monoposte, je ne peux ni tester, ni t'aider plus, désolé (recordset.recordcount m'inquiète un peu...)
En effet il y a une erreur sur :
Set objRecordSet = objCommand.Execute
If objRecordset.RecordCount = 0 Then
Je ne sais pas comment faire.
Merci
Set objRecordSet = objCommand.Execute
If objRecordset.RecordCount = 0 Then
Je ne sais pas comment faire.
Merci
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
12 juin 2009 à 13:56
12 juin 2009 à 13:56
pour ma part j'aurais écrit:
CommandText =";(&(objectCategory=User)" & _"(samAccountName="strUserName&"));samAccountName;subtree"
Set objRecordSet = objCommand.Execute(commandtext)
if not objrecorset.eof then
msgbox struser & " est répertorié"
else
msgbox struser & "n'est pas repertorié"
end if
mais...
CommandText =";(&(objectCategory=User)" & _"(samAccountName="strUserName&"));samAccountName;subtree"
Set objRecordSet = objCommand.Execute(commandtext)
if not objrecorset.eof then
msgbox struser & " est répertorié"
else
msgbox struser & "n'est pas repertorié"
end if
mais...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Il y a une erreur sur :
CommandText =";(&(objectCategory=User)" & _"(samAccountName="strUserName&"));samAccountName;subtree"
J'aimerai bien avoir un code fonctionnel !
J'ai un textbox1, j'entre l'identifiant d'un user présent dans active directory, si l'utilisateur n'existe pas alors MsgBox.
CommandText =";(&(objectCategory=User)" & _"(samAccountName="strUserName&"));samAccountName;subtree"
J'aimerai bien avoir un code fonctionnel !
J'ai un textbox1, j'entre l'identifiant d'un user présent dans active directory, si l'utilisateur n'existe pas alors MsgBox.
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
12 juin 2009 à 14:30
12 juin 2009 à 14:30
Excuses moi de t'avoir dérangé