Tendrías que tener en un CSV los nombres distinguidos de los grupos a cambiar y la descripción a establecer. Algo así:
Option Explicit
Const ADS_PROPERTY_UPDATE = 2
Dim obj_Grupo
Dim obj_FS
Dim obj_TS
Dim str_Linea
Dim str_DN
Dim arr_Descripcion
'Creamos un objeto FileSystem
Set obj_FS = CreateObject("Scripting.FileSystemObject")
'Abrimos el fichero de valores separados por tabuladores
Set obj_TS = obj_FS.OpenTextFile("d:\listados\grupos-descripciones.tab")
'Recorremos el fichero línea a línea
Do While Not obj_FS.AtEndOfStream
'Leemos la línea actual
str_Linea = obj_TS.ReadLine
'Obtenemos el nombre distinguido del grupo
str_DN = Replace(Split(str_Linea,vbTab))(0),"/","\/")
'Obtenemos la descripción
arr_Descripcion = Array(Split(str_Linea,vbTab)(1))
'Obtenemos el objeto iADsGroup
Set obj_Grupo = GetObject("LDAP://" & str_DN)
'Cambiamos su descripción
obj_Grupo.PutEx ADS_PROPERTY_UPDATE, _
"description", arr_Descripcion
'Validamos el cambio
obj_Grupo.SetInfo()
Wend
'Cerramos el fichero de valores separados por tabuladores
obj_TS.Close
'Limpieza de KKs :o))
Set obj_Grupo = Nothing
Set obj_TS = Nothing
Set obj_FS = Nothing
El fichero con los grupos y sus descripciones, en este ejemplo, es "d:\listados\grupos-descripciones.tab" y su contenido tiene un grupo por línea, con el nombre distinguido del grupo en primer lugar, un tabulador y la descripción a establecer.
siguiendo tu ejemplo:
cn=GrupoPrueba2,ou=R&D,dc=NA,dc=fabrikam,dc=com GrupoPrueba2
cn=GrupoPrueba3,ou=R&D,dc=NA,dc=fabrikam,dc=com GrupoPrueba3
Un saludo
Fernando Reyes [MS MVP]
MCSA 2000/2003
MCSE 2000/2003
MCITP EnterpriseAdministrator
Web:
http://freyes.svetlian.com
Blog:
http://urpiano.wordpress.com
RSS:
http://urpiano.wordpress.com/feed/
freyes.champú@champú.mvps.org
(Aclárate la cabeza si quieres escribirme)