Link to home
Start Free TrialLog in
Avatar of mcpp661
mcpp661

asked on

VBScript to create user accounts

I'm going to use the code below to create a bunch of user accounts. It obtains the data from an Excel spreadsheet I have. I'd like the script to set the option "User must change password at first logon" but don't know how. Can you tell me what I need to add to this script to configure that and where in the script it needs to go? Thank you.
' Script to create user accounts with. Obtains
' user information from an Excel spreadsheet
' ------------------------------------------------------' 
Option Explicit
Dim objRootLDAP, objContainer, objUser, objShell
Dim objExcel, objSpread, intRow
Dim strUser, strOU, strSheet, &_
  strCN, strSam, strFirst, strLast, strPWD
 
strOU = "OU=" & Inputbox("Enter the OU to add the users to:") & "," ' Note the comma
strSheet = Inputbox("Enter the path and filename of the Excel spreadsheet"
 
' Bind to Active Directory, Users container.
Set objRootLDAP = GetObject("LDAP://rootDSE")
Set objContainer = GetObject("LDAP://" & strOU & _
objRootLDAP.Get("defaultNamingContext")) 
 
' Open the Excel spreadsheet
Set objExcel = CreateObject("Excel.Application")
Set objSpread = objExcel.Workbooks.Open(strSheet)
intRow = 3 'Row 1 often contains headings
 
' Here is the 'DO...Loop' that cycles through the cells
' Note intRow, x must correspond to the column in strSheet
Do Until objExcel.Cells(intRow,1).Value = ""
   strSam = Trim(objExcel.Cells(intRow, 1).Value)
   strCN = Trim(objExcel.Cells(intRow, 2).Value) 
   strFirst = Trim(objExcel.Cells(intRow, 3).Value)
   strLast = Trim(objExcel.Cells(intRow, 4).Value)
   strPWD = Trim(objExcel.Cells(intRow, 5).Value)
 
   ' Build the actual User from data in strSheet.
   Set objUser = objContainer.Create("User", "cn=" & strCN)
   objUser.sAMAccountName = strSam
   objUser.givenName = strFirst
   objUser.sn = strLast
   objUser.SetInfo
 
   ' Separate section to enable account with its password
   objUser.userAccountControl = 512
   objUser.pwdLastSet = 0
   objUser.SetPassword strPWD
   objUser.SetInfo
 
intRow = intRow + 1
Loop
objExcel.Quit 
 
WScript.Quit

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of Brum07
Brum07
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial