Exporter dans Excel l’ensemble des comptes désactivés d’un domaine Active Directory

Ce script exporte dans un document EXCEL l’ensemble des comptes Active Directory d’un domaine nommé domlab.com. Le contrôleur de domaine utilisé est le serveur nommé SRVPDC01

Les attributs sélectionnés dans l’export sont les suivants:

  • displayName
  • Name
  • sn
  • givenName
  • distinguishedName

L’attribut userAccountControl permet de savoir si le compte est désactivé ou non. Il sert donc de condition dans le IF/THEN/ELSE

Voici une offre de notre annonceur


Dim ObjConnection, ObjCommand, ObjRecordSet
Dim objExcel
Const ADS_UF_ACCOUNTDISABLE = 2
Set ObjConnection = CreateObject("ADODB.Connection")
Set ObjCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
oDomainControler = "SRVPDC01/dc=domlab,dc=com"
sProperties="userAccountControl,displayName,Name,sn,givenName,distinguishedName"
objCommand.Properties("Page Size") = 10000
ObjCommand.CommandText = ";(&(objectCategory=person)(objectClass=user));" & sProperties & ";subtree"
ObjCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
Set objExcel = WScript.CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Add
objExcel.ActiveSheet.Name = "Users"
objExcel.ActiveSheet.Range("A1").Activate
objExcel.ActiveCell.Value = "DisplayName"
objExcel.ActiveCell.Offset(0,1).Value = "Login"
objExcel.ActiveCell.Offset(0,2).Value = "Nom"
objExcel.ActiveCell.Offset(0,3).Value = "Prénom"
objExcel.ActiveCell.Offset(0,4).Value = "Emplacement de l'objet"
objExcel.ActiveCell.Offset(1,0).Activate
Set ObjRecordSet = ObjCommand.Execute
Do until objRecordSet.EOF
intUAC=objRecordset.Fields("userAccountControl")
If intUAC AND ADS_UF_ACCOUNTDISABLE Then
objExcel.ActiveCell.Value = objRecordSet.fields("displayName")
objExcel.ActiveCell.Offset(0,1).Value = objRecordSet.fields("Name")
objExcel.ActiveCell.Offset(0,2).Value = objRecordSet.fields("sn")
objExcel.ActiveCell.Offset(0,3).Value = objRecordSet.fields("givenName")
objExcel.ActiveCell.Offset(0,4).Value = objRecordSet.fields("distinguishedName")
objExcel.ActiveCell.Offset(1,0).Activate
objRecordSet.MoveNext
Else
objRecordSet.MoveNext
End If
Loop
ObjConnection.Close
Set ObjConnection = Nothing
Set ObjCommand = Nothing
Set ObjRecordSet = Nothing
objExcel.Range("A1:E1").Select
objExcel.Selection.Interior.ColorIndex = 19
objExcel.Selection.Font.ColorIndex = 9
objExcel.Selection.Font.Bold = True
objExcel.Cells.EntireColumn.AutoFit
wscript.echo "Terminé"
Ce code est correctement formaté.
Vous pouvez directement le COPIER / COLLER dans un fichier VBS.

Voici mon GPS pour faire du vélo ! Le Garmin Edge 830 est une vraie réussite avec une autonomie de plus de 15 heures cartographie activée et un écran tactile désormais absolument parfait qui réagit au doigt et à l'oeil, comme un smartphone.

Créez un itinéraire sur Strava ou sur Garmin Connect et il est aussitôt transmis à vote GPS. Si vous êtes pressé ou dans un lieu inconnu, le générateur de boucle vous guidera tout simplement. Si vous décidez de changer de prendre un autre chemin le recalcul est automatique et un nouvel itinéraire vous sera proposé.

Voir mon classement des meilleurs GPS pour en savoir plus !

GPS Vélo

Laissez un commentaire