[Résolu][VBS Débutant Boucle Do-While-Loop Active Directory]

[VBS Débutant Boucle Do-While-Loop Active Directory] [Résolu] - VB/VBA/VBS - Programmation

Marsh Posté le 05-02-2007 à 12:49:22    

Bonjour,
 
je souhaite faire des modifs dans mon AD à partir d'un fichier Excel qui contient la liste des users concernés.
lorsque cela ne concerne qu'un user, (sans boucle), ca fonctionne bien et le vbs lit bien le contenu de mon fichier.
mais dès que je mets un Do While Loop, ca semble boucler sans fin et ca me prend un max de ressources systeme.
voici le code :  

Code :
  1. '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  2. ' Nom du Fichier Utilisateurs
  3. liste = "G:\Scripts\test\testmodifuser.xls"
  4. '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  5. ' Ouverture du fichier Excel
  6. Set objShell = wscript.createobject("wscript.shell" )
  7. Set objExcel = CreateObject("Excel.Application" )
  8. Set objSpread = objExcel.Workbooks.Open(liste)
  9. '============================================
  10. ' Boucle d'extraction des donn‚es Excel ligne par ligne [-d‚tail-]
  11. ' Commence ligne 2 et colonne 1
  12. ' S'arrete quand cellule ligne #i, colonne 1 = VIDE
  13. '=======================================================================
  14. ligne = 2
  15. Do While objExcel.Cells(ligne,1).Value <> ""
  16. '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  17. ' Assignation de chaque colonne Excel dans une variable
  18. nom = Trim(objExcel.Cells(ligne,1).value) 'NOM de l'utilisateur
  19. prenom = Trim(objExcel.Cells(ligne,2).value) 'PRENOM de l'utilisateur
  20. Set objUser = GetObject("LDAP://CN=" &nom &",OU=OU_TEST, DC=TOTO" )
  21. objUser.Put "Description", "oki"
  22. objUser.SetInfo
  23. ligne=ligne+1
  24. Loop
  25. objExcel.Quit
  26. set objExcel=nothing
  27. MsgBox "FIN"
  28. WScript.Quit


 
Merci de votre aide

Message cité 1 fois
Message édité par _alex67 le 05-02-2007 à 17:26:49
Reply

Marsh Posté le 05-02-2007 à 12:49:22   

Reply

Marsh Posté le 05-02-2007 à 17:25:13    

_alex67 a écrit :


Code :
  1. Do While objExcel.Cells(ligne,1).Value <> ""




 
j'ai modifié ma boucle par un Do Until et ca passe :

Code :
  1. Do until objExcel.cells(ligne,1).value = ""


 
-> Résolu

Reply

Sujets relatifs:

Leave a Replay

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