ze10301980
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору ' Выгрузка списка компьютеров из Active Directory в Excel ' Windows Server 2003 : Yes ' Windows XP : Yes ' Windows 2000 : Yes ' Windows NT 4.0 : Yes ' Windows 98 : Yes Const ADS_SCOPE_SUBTREE = 2 Set objExcel = CreateObject("Excel.Application") objExcel.Visible = True objExcel.Workbooks.Add objExcel.Cells(1, 1).Value = "Computer Name" objExcel.Cells(1, 2).Value = "Location" Set objConnection = CreateObject("ADODB.Connection") Set objCommand = CreateObject("ADODB.Command") objConnection.Provider = "ADsDSOObject" objConnection.Open "Active Directory Provider" Set objCOmmand.ActiveConnection = objConnection objCommand.CommandText = _ "Select Name, Location from 'LDAP://dc='Имя домена',dc=local' " _ & "Where objectClass='computer'" objCommand.Properties("Page Size") = 1000 objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE Set objRecordSet = objCommand.Execute objRecordSet.MoveFirst x = 2 Do Until objRecordSet.EOF objExcel.Cells(x, 1).Value = objRecordSet.Fields("Name").Value objExcel.Cells(x, 2).Value = objRecordSet.Fields("Location").Value x = x + 1 objRecordSet.MoveNext Loop Set objRange = objExcel.Range("A1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("B1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() objExcel.Quit Добавлено: Выгрузка даных о пользователях из Active Directory в Excel Const ADS_SCOPE_SUBTREE = 2 Set objExcel = CreateObject("Excel.Application") objExcel.Visible = True objExcel.Workbooks.Add objExcel.Cells(1, 1).Value = "Login" objExcel.Cells(1, 2).Value = "Имя" objExcel.Cells(1, 3).Value = "Отчество" objExcel.Cells(1, 4).Value = "Фамилия" objExcel.Cells(1, 5).Value = "Выводимое Имя" objExcel.Cells(1, 6).Value = "Описание" objExcel.Cells(1, 7).Value = "Комната" objExcel.Cells(1, 8).Value = "Номер телефона" objExcel.Cells(1, 9).Value = "Эл. почта" objExcel.Cells(1, 10).Value = "Улица" objExcel.Cells(1, 11).Value = "Город" objExcel.Cells(1, 12).Value = "Область" objExcel.Cells(1, 13).Value = "Индекс" objExcel.Cells(1, 14).Value = "Страна" objExcel.Cells(1, 15).Value = "Должность" objExcel.Cells(1, 16).Value = "Отдел" objExcel.Cells(1, 17).Value = "Организация" objExcel.Cells(1, 18).Value = "distinguishedname" objExcel.Cells(1, 19).Value = "cn" Set objConnection = CreateObject("ADODB.Connection") Set objCommand = CreateObject("ADODB.Command") objConnection.Provider = "ADsDSOObject" objConnection.Open "Active Directory Provider" Set objCommand.ActiveConnection = objConnection objCommand.Properties("Page Size") = 100 objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE objCommand.CommandText = _ "SELECT cn, canonicalname, distinguishedname,sAMAccountName,givenName, initials, SN, displayName, description, "_ & "physicalDeliveryOfficeName, telephoneNumber,mail, streetAddress, l ,st, postalCode, " _ & "c, title, department, company FROM " _ & "'LDAP://dc='Имя домена',dc=local' WHERE " _ & "objectCategory='user'" Set objRecordSet = objCommand.Execute objRecordSet.MoveFirst x = 2 Do Until objRecordSet.EOF objExcel.Cells(x, 1).Value = objRecordSet.Fields("sAMAccountName").Value objExcel.Cells(x, 2).Value = objRecordSet.Fields("givenName").Value objExcel.Cells(x, 3).Value = objRecordSet.Fields("initials").Value objExcel.Cells(x, 4).Value = objRecordSet.Fields("SN").Value objExcel.Cells(x, 5).Value = objRecordSet.Fields("displayName").Value objExcel.Cells(x, 6).Value = objRecordSet.Fields("description").Value objExcel.Cells(x, 7).Value = objRecordSet.Fields("physicalDeliveryOfficeName").Value objExcel.Cells(x, 8).Value = objRecordSet.Fields("telephoneNumber").Value objExcel.Cells(x, 9).Value = objRecordSet.Fields("mail").Value objExcel.Cells(x, 10).Value = objRecordSet.Fields("streetAddress").Value objExcel.Cells(x, 11).Value = objRecordSet.Fields("l").Value objExcel.Cells(x, 12).Value = objRecordSet.Fields("st").Value objExcel.Cells(x, 13).Value = objRecordSet.Fields("postalCode").Value objExcel.Cells(x, 14).Value = objRecordSet.Fields("c").Value objExcel.Cells(x, 15).Value = objRecordSet.Fields("title").Value objExcel.Cells(x, 16).Value = objRecordSet.Fields("department").Value objExcel.Cells(x, 17).Value = objRecordSet.Fields("company").Value objExcel.Cells(x, 18).Value = objRecordSet.Fields("distinguishedname").Value objExcel.Cells(x, 19).Value = objRecordSet.Fields("cn").Value x = x + 1 objRecordSet.MoveNext Loop Set objRange = objExcel.Range("A1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("B1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("C1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("D1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("E1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("F1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("G1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("H1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("I1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("J1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("K1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("L1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("M1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("N1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("O1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("P1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("Q1") objRange.Activate Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.ActiveCell.EntireColumn objRange.Autofit() Set objRange = objExcel.Range("A1").SpecialCells(11) Set objRange2 = objExcel.Range("C1") Set objRange3 = objExcel.Range("A1") objExcel.Quit |