У меня есть 2 скрипта: 1) для вывода заблокированных пользователей: | Код | Option Explicit
Const ADS_UF_ACCOUNTDISABLE = 2
Dim objExcel Dim objWorkbook
Dim objConnection Dim objCommand Dim objRecordset Dim intUAC
Dim strHTMLText Dim intCounter
Dim objFSO Dim objTS
Set objExcel = WScript.CreateObject("Excel.Application") Set objWorkbook = objExcel.Workbooks.Add
Set objConnection = WScript.CreateObject("ADODB.Connection") Set objCommand = WScript.CreateObject("ADODB.Command")
objConnection.Open "Provider=ADsDSOObject;" objCommand.ActiveConnection = objConnection objCommand.CommandText = _ "<GC://dc=******,dc=***>;(objectCategory=User);userAccountControl,distinguishedName;subtree"
Set objRecordSet = objCommand.Execute
strHTMLText = "<html><title>Отчет о заблокированных учетных записях</title><body>" strHTMLText = strHTMLText & "<h1>Отчет о заблокированных учетных записях</h1>"
objWorkbook.Sheets(1).Cells(1, 1).Value = "Отчет о заблокированных учетных записях"
intCounter = 3
Do Until objRecordset.EOF 'intUAC = objRecordset.Fields("userAccountControl") If objRecordset.Fields("userAccountControl") AND ADS_UF_ACCOUNTDISABLE Then strHTMLText = strHTMLText & objRecordset.Fields("distinguishedName") & "<br />" objWorkbook.Sheets(1).Cells(intCounter, 1).Value = objRecordset.Fields("distinguishedName") intCounter = intCounter + 1 End If objRecordset.MoveNext Loop
strHTMLText = strHTMLText & "Всего <b>" & intCounter & "</b> заблокировано" objWorkbook.Sheets(1).Cells(intCounter + 1, 1).Value = "Всего " & intCounter & " заблокировано"
objConnection.Close
strHTMLText = strHTMLText & "</body></html>"
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") Set objTS = objFSO.CreateTextFile("c:\disabled users.htm", True)
objTS.Write strHTMLText objTS.Close
Set objTS = Nothing Set objFSO = Nothing
objWorkbook.SaveAs "c:\disabled_users.xls" objExcel.Quit
Set objRecordSet = Nothing Set objCommand = Nothing Set objConnection = Nothing
Set objWorkbook = Nothing Set objExcel = Nothing
WScript.Quit 0 |
2) Вывод пользователей с ограниченным временным доступом к сетевым ресурсам предприятия: | Код | Option Explicit
Dim objExcel Dim objWorkbook
Dim strHTMLText Dim intCounter
Dim objDomain Dim objUser
Dim dtAccountExpirationDate
Dim objFSO Dim objTS
Set objExcel = WScript.CreateObject("Excel.Application") Set objWorkbook = objExcel.Workbooks.Add
strHTMLText = "<html><title>Отчет о bla-bla-bla</title><body>" strHTMLText = strHTMLText & "<h1>Отчет о bla-bla-bla</h1>"
objWorkbook.Sheets(1).Cells(1, 1).Value = "Отчет о bla-bla-bla"
intCounter = 0
Set objDomain = GetObject("WinNT://********,domain") ' NetBIOS-имя домена objDomain.Filter = Array("User")
On Error Resume Next
For Each objUser In objDomain If Not IsNull(objUser.AccountExpirationDate) Then If Err.Number = 0 Then WScript.Echo objUser.Name, objUser.AccountExpirationDate strHTMLText = strHTMLText & objUser.Name & ":" & objUser.AccountExpirationDate & "<br />" objWorkbook.Sheets(1).Cells(intCounter + 3, 1).Value = objUser.Name & ":" & objUser.AccountExpirationDate intCounter = intCounter + 1 Else Err.Clear End If End If Next
On Error Goto 0
strHTMLText = strHTMLText & "Всего <b>" & intCounter & "</b> bla-bla-bla" objWorkbook.Sheets(1).Cells(intCounter + 3 + 1, 1).Value = "Всего " & intCounter & " bla-bla-bla"
strHTMLText = strHTMLText & "</body></html>"
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") Set objTS = objFSO.CreateTextFile("c:\disabled users2.htm", True)
objTS.Write strHTMLText objTS.Close
Set objTS = Nothing Set objFSO = Nothing
objWorkbook.SaveAs "c:\disabled_users2.xls" objExcel.Quit
Set objDomain = Nothing
Set objWorkbook = Nothing Set objExcel = Nothing
WScript.Quit 0 |
Они оба создают файл HTML & EXCEL, вся проблемма в том что когда создает HTML, то выводит по строчкам пользователей и с CN,OU и т.д., а в EXCEL в 1 ячейке также записывает всю информацию. Мне надо чтобы в HTML выводило в виде таблицы и без вывода CN,OU(в смысле вывод только имени пользователя и подразделения!), а в EXCEL в каждой ячейке свой вид данных.Помогите пожалуйста!!!!!!!!! У меня ничего не получается Это сообщение отредактировал(а) Karas51 - 2.6.2009, 14:20
|