Hi All,
I have been working on a script that imports users from OUs in AD to Excel. Got it working, it formats and all. I do not know how I can get the script to delete Rows that contain Empty Cells.
Here is the script so far.
Option Explicit
Dim dtmDate, strMonth, strYear, strFileName, objExcel, objWorkbook, objWorksheet1, objWorksheet2, objRange, objRange2, objContainer, objChild
Const xlAscending = 1
Const xlYes = 1
dtmDate = Date
strMonth = Month(Date)
strYear = Year(Date)
strFileName = "C:\" & "Month_End_" & strMonth & "-" & strYear & ".xls"
'Names XLS file
Set objExcel = CreateObject("Excel.Applic
ation")
set objWorkbook = objExcel.Workbooks.Add
'sets objWorkbook to use Excel.Workbooks.Add function
set objWorksheet1 = objWorkBook.WorkSheets(1)
'sets the name objWorksheet1 to Excel.Application.Workbook
s.Workshee
ts(1)
objExcel.Visible = True
objExcel.ActiveSheet.Name = "JSC_Users" 'names Active Sheet
objExcel.ActiveSheet.Range
("A1").Act
ivate 'Selects A1
objExcel.ActiveCell.Value = "Last_Name" 'col header 1
objWorkSheet1.Cells(1, 2).Value = "First_Name" 'col header 2
objWorkSheet1.Cells(1, 3).Value = "Description" 'col header 3
objExcel.ActiveCell.Offset
(1,0).Acti
vate 'move 1 down
Set objContainer = GetObject("LDAP://OU=New Jersey,DC=JSC,DC=COM")
objContainer.Filter = Array("user")
For Each objChild In objContainer
objExcel.ActiveCell.Value = objChild.SN
objExcel.ActiveCell.Offset
(0,1).Valu
e = objChild.GivenName
objExcel.ActiveCell.Offset
(0,2).Valu
e = objChild.Description
objExcel.ActiveCell.Offset
(1,0).Acti
vate 'move 1 down
Next
Set objContainer = GetObject("LDAP://OU=Long Island,DC=JSC,DC=COM")
objContainer.Filter = Array("user")
For Each objChild In objContainer
objExcel.ActiveCell.Value = objChild.SN
objExcel.ActiveCell.Offset
(0,1).Valu
e = objChild.GivenName
objExcel.ActiveCell.Offset
(0,2).Valu
e = objChild.Description
objExcel.ActiveCell.Offset
(1,0).Acti
vate 'move 1 down
Next
Set objContainer = GetObject("LDAP://OU=NYC,D
C=JSC,DC=C
OM")
objContainer.Filter = Array("user")
For Each objChild In objContainer
objExcel.ActiveCell.Value = objChild.SN
objExcel.ActiveCell.Offset
(0,1).Valu
e = objChild.GivenName
objExcel.ActiveCell.Offset
(0,2).Valu
e = objChild.Description
objExcel.ActiveCell.Offset
(1,0).Acti
vate 'move 1 down
Next
objworksheet1.Columns.Auto
Fit()
'Autosize for Column Width for Work Sheet 1
'objWorkSheet1.Range("A2:C
300").Acti
vate
'highlight Column A Row2 : Column C Row 200
set objRange = objWorksheet1.UsedRange
set objRange2 = objExcel.Range("A1")
objRange.Sort objRange2, xlAscending, , , , , , xlYes
'Sorts ALL used Cells by Column 1 (A1). xlAscending, sorts ascending, xlYes means Header Row=Yes
set objWorksheet2 = objWorkBook.WorkSheets(2)
objWorksheet2.Name = "Assentor Users"
objWorksheet2.activate 'activates Assentor Users Work Sheet
'objWorkBook.SaveAs(strFil
eName)
'objExcel.Quit
__________________________
__________
__________
______
Any help is appreciated.
Thanks
Start Free Trial