Function GetAdsPropGL(ByVal SearchField, ByVal SearchString, ByVal ReturnField) Dim adoCommand, strDomain, objConnection, objRootDSE, objRecordSet, strFilter, objRecordSetD strFilter = "(NETBIOSName=*)" Set objConnection = CreateObject("ADODB.Connection") objConnection.Provider = "ADsDSOObject" objConnection.Open "Active Directory Provider" Set objRootDSE = GetObject("LDAP://RootDSE") Set objRecordSet = objConnection.Execute(";" & strFilter & ";" & "dnsroot,ncname;subtree") Set objRootDSE = Nothing GetAdsPropGL = "" Do While Not objRecordSet.EOF Set adoCommand = CreateObject("ADODB.Command") adoCommand.ActiveConnection = objConnection strDomain = Join(objRecordSet.Fields("dnsroot").Value) & "/" & objRecordSet.Fields("ncname").Value adoCommand.CommandText = ";(&(objectCategory=" & "User" & ")" & "(" & SearchField & "=" & SearchString & "));" & SearchField & "," & ReturnField & ";subtree" Set objRecordSetD = adoCommand.Execute If objRecordSetD.RecordCount > 0 Then GetAdsPropGL = GetAdsPropGL & vbCrLf & objRecordSetD.Fields(ReturnField) ' return value End If objRecordSet.MoveNext Loop Set objRecordSet = Nothing Set objCommand = Nothing Set objConnection = Nothing End Function