Bonjour à tous,
Dans le cadre de mon stage je dois réaliser un script en VBS. Je n'utilise ce langage que depuis quelques jours.
Je dispose d'un fichier Excel recensant toutes les permissions sur les dossiers d'un serveur de stockage. Mon objectif est d'utiliser ce fichier afin de mettre à jour les permissions pour chaque utilisateur. En effet le nom des utilisateurs va changer, ce qui supprimera leurs permissions personnelles.
Chaque ligne comprend ses informations:
chemin du dossier, nom de compte, droits
Mon script fonctionne si je parcours toutes les lignes.Il récupère les informations de l'utilisateur souhaité et va mettre à jour les permissions en appelant un autre script fait par Microsoft : xcacls.vbs. Mais étant donné que le fichier fait environ 60000 lignes j'aimerais optimiser le traitement en filtrant uniquement l'utilisateur sur lequel je souhaite mettre à jour les permissions. Puis récupérer les informations uniquement des lignes filtrées.
Je réussi à filtrer avec ce code là:
Feuille_XLS.Range("B2" ).AutoFilter 2, OldUser
(OldUser étant le nom de compte sur lequel on souhaite récupérer les permissions)
Ensuite je suis bloqué. J'ai parcouru les différents sujets sur internet, tester plusieurs choses mais je n'arrive pas à travailler uniquement sur les lignes visibles (je ne réussi pas à utiliser SpecialCells(xlTypeVisible) par exemple). De plus on ne trouve presque uniquement des informations pour VBA, et j'ai du mal à distinguer ce qui est pareil ou différent en VBS
Auriez vous une solution qui au choix:
- me permettrait de parcourir uniquement les lignes visibles
- me permettrait de copier les lignes visibles sur une nouvelle feuille.
Je vous remercie pour votre aide,
Cordialement,
-BøB-
Message édité par -BøB- le 23-07-2009 à 09:44:36