mcintosh55
14-12-2018, 09:51
Добрый день, есть скрипт на VBA для excel получение данных из AD, подскажите как такое-же можно провернуть для word.
Function GetADInfo(ByVal SearchField, ByVal SearchString, ByVal ReturnField)
Dim adoCommand, strDomain, objConnection
strDomain = "dc=Ваш_домен,dc=local"
Set objConnection = CreateObject("ADODB.Connection")
objConnection.Open "Provider=ADsDSOObject;"
Set adoCommand = CreateObject("ADODB.Command")
adoCommand.ActiveConnection = objConnection
adoCommand.CommandText = _
"<LDAP://" & strDomain & ">;(&(objectCategory=" & "User" & ")" & _
"(" & SearchField & "=" & SearchString & "));" & SearchField & "," & ReturnField & ";subtree"
Dim objRecordSet
Set objRecordSet = adoCommand.Execute
If objRecordSet.RecordCount = 0 Then
GetADInfo = "not found"
Else
GetADInfo = objRecordSet.Fields(ReturnField)
End If
objConnection.Close
Set objRecordSet = Nothing
Set objCommand = Nothing
Set objConnection = Nothing
End Function
Function GetADInfo(ByVal SearchField, ByVal SearchString, ByVal ReturnField)
Dim adoCommand, strDomain, objConnection
strDomain = "dc=Ваш_домен,dc=local"
Set objConnection = CreateObject("ADODB.Connection")
objConnection.Open "Provider=ADsDSOObject;"
Set adoCommand = CreateObject("ADODB.Command")
adoCommand.ActiveConnection = objConnection
adoCommand.CommandText = _
"<LDAP://" & strDomain & ">;(&(objectCategory=" & "User" & ")" & _
"(" & SearchField & "=" & SearchString & "));" & SearchField & "," & ReturnField & ";subtree"
Dim objRecordSet
Set objRecordSet = adoCommand.Execute
If objRecordSet.RecordCount = 0 Then
GetADInfo = "not found"
Else
GetADInfo = objRecordSet.Fields(ReturnField)
End If
objConnection.Close
Set objRecordSet = Nothing
Set objCommand = Nothing
Set objConnection = Nothing
End Function