Modification objet Active Directory

Modification objet Active Directory - VB/VBA/VBS - Programmation

Marsh Posté le 24-07-2007 à 17:06:36    

Bonjour tlm,
 
Le code suivant doit me servir à modifier la descrpition de plusieurs objets ( des ordinateurs ) dans active directory et oui les anciens administrateurs ne l'on pas fait et j'ai pas vraiment envie de les faire un à un vu le nombre.
 
Pour cela je place dans un fichier excel le nom de l'objet avec sa description et ce script doit normalement vérifier si le nom existe dans une OU et si il est présent alors mettre la description.
 
Mais malheureusement pour moi je ne suis pas doué en VB et mon script ne fait rien.
 
Merci d'avance pour un tuyau.
 
@++ Selstat
 
Voici le script:
 
Option Explicit
Dim strComputer, strOU, strSheet, strDescription, intRow
Dim objRootLDAP, objContainer, objComputer, objShell
Dim objExcel, objSpread, objOU, intCounter
 
strOU = "OU=TEST ,"  
strSheet = "E:fichier.xls"
intCounter = 0
 
Set objRootLDAP = GetObject("LDAP://rootDSE";)
Set objContainer = GetObject("LDAP://" & strOU & _
objRootLDAP.Get("defaultNamingContext";))
 
Set objExcel = CreateObject("Excel.Application";)
Set objSpread = objExcel.Workbooks.Open(strSheet)
intRow = 2 'Row 1 often containes headings
 
Do Until objExcel.Cells(intRow,1).Value = ""
   strComputer = Trim(objExcel.Cells(intRow, 1).Value)
   strDescription = Trim(objExcel.Cells(intRow, 2).Value)
   
If objComputer = strComputer Then
     objComputer.Put "Description", strDescription
     objComputer.SetInfo
     intCounter = intCounter +1
     End if
 
    intRow = intRow + 1
 
Loop
 
objExcel.Quit
 
WScript.Echo intCounter & " Descriptions Changées"
 
WScript.Quit
 
 
 
le fichier excel :
 
Dans une colonne celle de droite j'ai le nom de la machine et dans l'autre j'ai la description.
 
 
 
Merci d'avance à tlm
 
 


Message édité par Selstat le 24-07-2007 à 17:21:06
Reply

Marsh Posté le 24-07-2007 à 17:06:36   

Reply

Marsh Posté le 24-07-2007 à 17:11:47    

peux-tu nous dire en quoi consiste le "rien".
En avancant pas à pas dans ton code, tu as un plantage ? ou le résultat n'est pas celui escompté ?

Reply

Marsh Posté le 24-07-2007 à 17:17:59    

En faite je n'ai pas de plantage, le script s'execute mais aucuns changement dans l'AD j'ai l'impression qui ne fait pas la relation entre mon fichier et ce qui se trouve dans AD

Reply

Marsh Posté le 24-07-2007 à 17:18:40    

Est-ce que la ligne « strSheet = "E:fichier.xls" » est identique dans ton code ou as-tu changé le nom du fichier en écrivant ton message pour des raisons de confidentialité ?
Parce que le Path relatif (pas de \) peut poser problème si aucun ChDir n'a été fait avant le .Open et que le répertoire de travail par défaut ne pointe pas dans le répertoire de fichier.xls.


Message édité par tegu le 24-07-2007 à 17:18:58
Reply

Marsh Posté le 24-07-2007 à 17:20:50    

nom dans mon script il y a le \ j'ai du oublier de le recopier desole

Reply

Marsh Posté le 24-07-2007 à 17:22:03    

En faite en voulant editer mon post meme si je vous le rajoute il ne reste pas je comprend pas pourquoi

Reply

Marsh Posté le 25-07-2007 à 11:16:59    

Personne a une petite idée

Reply

Marsh Posté le 25-07-2007 à 11:23:24    

je pense à un truc :
tu nous dit que tu as la machine dans la colonne de droite et dans l'auter la description... tu confonds pas ta droite de ta gauche la ?  :sweat:  
vu que tu récupère (introw,1) et (introw,2) pour le nom machine et la description...

Reply

Marsh Posté le 25-07-2007 à 11:31:47    

Ben il me semble que dans le introw,1 je recupere strComputer et introw,2 stDescription désolé je me suis trompé sur ma desription, il faut dire que je perd un peu mon latin a force lol


Message édité par Selstat le 25-07-2007 à 11:34:31
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed