Rechercher : dans
Par :

SCRIPT AD VBS avec Excel

Dernière réponse le 26 mai 2009 à 16:12:46 Kristo91, le 24 mai 2009 à 21:02:52 
 Signaler ce message aux modérateurs

Bonjour,

Je suis acctuellement en train de faire un script vbs pour créer des utilisateurs à partir d'un fichier Excel.
Cependant j'ai un probleme avec la fonction objUser.SetPassword. Je souhaite que ce champ soit rempli par une valeur qui est dans mon tableau Excel. Mais j'obtiens l'erreur suivante : "Cet objet ne gère pas cette propriété ou cette methode : 'objUser.SetPassword' avec le code "800A01B6"

Voici une partie de mon code :

[...]
objUser.GivenName = objExcel.Cells (intRow, 3).Value
objUser.SN = objExcel.Cells (intRow, 4).Value
objUser.SetPassword = objExcel.Cells (intRow, 5).Value <---------- l'erreur est ici
objUser.SetInfo
[...]

Avez vous une soluction??

Merci d'avance

Configuration: Windows Vista
Opera 9.64

Meilleures réponses pour « SCRIPT AD VBS avec Excel » dans :
[IE] Erreur de script / Effectuer un débogage VoirDe temps en temps, lorsque vous naviguez sur le Net et que vous chargez une page Web, un message d'erreur de script survient : Une erreur est survenue. Une erreur est survenue sur le script de cette page. Souhaitez-vous effectuer un débogage...
VBScript - Les boîtes de dialogue VoirQu'est-ce qu'une boîte de dialogue? Une boîte de dialogue est une fenêtre qui s'affiche au premier plan suite à un événement, et qui permet : soit d'avertir l'utilisateur ; soit le confronter à un choix ; soit lui demander de compléter un champ...
Créer un réseau WiFi ad hoc VoirPrésentation du réseau WiFi ad hoc Si vous possédez deux ordinateurs ou plus équipés d'adaptateurs sans fil (cartes WiFi), il est possible de les relier très simplement en réseau en mettant en place un réseau dit « ad hoc », c'est-à-dire un réseau...
Introduction à VBScript VoirPrésentation de VB Script VBScript (aussi appelé Visual Basic Scripting Edition) est un sous-ensemble du langage Visual Basic for Applications (VBA), un langage propriétaire de Microsoft prévu pour être intégré aux produits Microsoft Office©,...

1

 Praetorien, le 26 mai 2009 à 16:12:46
  • +1

Salut!

Voila je ne sais pas si je vais pouvoir t'aider un peu,mais avec ce script,les users sont importer dans AD,le seul soucie,c'est que le mot passe n'est apparement pas valider.D'un poste client,je n'arrive pas a ouvrir une session.Il y a certe sur les forum des reponses pour entrer un mot de passe et utiliser les strategies"l'utilisateur ne peux pas changer de mot de passe,et le mot de passe n'expire jamais",mais ce n'est que pour un User,alors que la ca concerne plusieurs users(1500 pour le moment sur un fichier excel)Les solutions que j'ai trouvé son viable pour le premier utilisateur,mais la ligne suivante,"boum" ca bloque"

Donc si quelqu'un avait une reponse,ce serait tres serviable de votre part!

'========================================================================
' Script de création de comptes utilisateurs dans le conteneur "Users" a partir d'un fichier Excel
'========================================================================

'========================================================================
' Déclaration des variables
'========================================================================

Dim oexapp, oexwk, oexws, owshshell, ocellule, objOU, i
dim nom, prenom, loggin, mdp, bureau, messagerie, ville, liste
liste = ""

'========================================================================
' Accès au fichier Excel contenant les données des utilisateurs a créer
'========================================================================

set oexapp = wscript.createobject("Excel.Application")
set owshshell = wscript.createobject("wscript.shell")
oexapp.visible = false
set oexwk = oexapp.workbooks.open( "c:\liste_etu_902.xls")
set oexws = oexwk.activesheet

'========================================================================
' Boucle d'extraction des données Excel ligne par ligne [~détail~]
'========================================================================

i = 2
Do until oexapp.cells(i,16).value = ""

' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Assignation de chaque colonne Excel dans une variable
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

nom = oexapp.cells(i,1).value
prenom = oexapp.cells(i,2).value
ville = oexapp.cells(i,3).value
mdp = oexapp.cells(i,4).value
bureau = oexapp.cells(i,10).value
loggin = oexapp.cells(i,15).value
messagerie = oexapp.cells(i,16).value


' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Choix du domaine et du conteneur d'Active Directory
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Set objDomain = GetObject("LDAP://OU=groupe,dc=monserveur,dc=com")
Set objCN = GetObject("LDAP://OU=groupe, dc=monserveur,dc=com")

' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Création de l'utilisateur "# i" et assignation des valeurs: loggin, nom, prénom, bureau _
' messagerie, ville et password

' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


Set objUser = objCN.Create("user", "CN=" & Nom & " " & Prenom)
objUser.Put "UserPrincipalName", loggin
objUser.Put "sn", nom
objUser.Put "givenName", prenom
objUser.Put "Name", Nom & " " & Prenom
objUser.Put "displayName", Nom & " " & Prenom
objUser.Put "physicalDeliveryOfficeName", bureau
objUser.Put "mail", messagerie
objUser.Put "l", ville
objUser.SetInfo

Set objUser = GetObject("LDAP://OU=groupe,dc=monserveur,dc=com")
objUser.SetPassword mdp
objUser.SetInfo


' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Placement de l'utilisateur dans le groupe "Utilisa. du domaine"
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Set objCN = GetObject("LDAP://OU=groupe,dc=monserveur,dc=com")
Set objGroup = GetObject("LDAP://OU=groupe, dc=monserveur, dc=com")
objGroup.Put "UserPrincipalName", "groupe"

' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Activation du compte
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Set objUser = GetObject("LDAP://cn=" & nom & " " & prenom & ", OU=groupe, dc=monserveur, dc=com")
objUser.AccountDisabled = FALSE
objUser.SetInfo

liste = liste + nom & ", "
i = i+1

Loop

' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Récapitulatif des utilisateurs crées via la variable "liste"
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

MsgBox "Les utilisateurs " & liste & " ont été créés et activés."

Répondre à Praetorien