Renommer automatiquement un document Word grâce à son contenu

Un audit documentaire révèle de nombreuses surprises. En particulier, le nommage des documents est parfois peu significatif par rapport au sujet traité dans le document. Cette situation est encore pire pour les métadonnées, notamment le titre.

Si vous voulez démarrer la mise en place d’une GED (Gestion Electronique de Documents) dans de bonnes conditions, il est préférable que les documents existants soient corrigés avant d’être injectés dans la GED. Ou simplement, si vous souhaitez que le nom de vos fichiers reflète leur contenu.

Bien évidemment, il n’est pas question de reprendre manuellement les documents quand il y en a plusieurs milliers.

Pour répondre à une demande de ce type, j’ai développé un script qui procède à un renommage automatique des documents Word. Ce script est fortement basé sur les trucs et astuces enseignés sur le site de Hey, Scripting Guy!.

Le critère utilisé pour le renommage consiste à récupérer le contenu du premier paragraphe de style Titre, Titre 1 ou Titre 2. Si aucun style n’a été trouvé dans le document, il n’est pas renommé et il n’est pas mis à jour. La liste des styles est paramétrable : vous pouvez ajouter des styles supplémentaires, utilisés dans le corpus analysé.

Si un des styles recherchés est trouvé, par exemple Titre 1, alors le contenu du paragraphe Titre 1 devient le nom du fichier. La propriété Word (métadonnée) Titre est remplacée par le contenu du paragraphe Titre 1.

Facultativement, vous pouvez remplacer des caractères du nom du fichier ou du titre par une autre chaîne. Cela permet d’éliminer des chaînes de caractères qui ne sont pas significatives. Cela permet aussi d’insérer des caractères afin de normaliser les noms de fichiers. Cette étape est complètement facultative.

Le script a été exécuté sur des milliers de documents réels. Les documents ont été rédigés sur une période de 9 ans. Le nombre d’auteurs (personnes physiques) est inconnu car un compte générique a été utilisé pour rédiger les articles. En moyenne, les documents ont une taille approximative de 250 Ko. Le plus gros document a une taille de 1,3 Mo.

Comme souvent avec les scripts qui s’exécutent sur un volume important, les temps de réponses ne sont pas linéaires. Ils sont excellents au début (20 documents / minute environ) puis ils deviennent exécrables au fur et à mesure.

Plutôt que de chercher à optimiser le script, il a été décidé de procéder par lot de 150 documents. Cette approche s’est révélée efficace et finalement très rapide. Car, avec un ordinateur de configuration bureautique standard, le traitement des 150 documents se fait en 20 minutes environ, soit 450 documents / heure.

Les tests réalisés avec du matériel plus puissant n’a pas montré d’améliorations significatives.

Le taux des documents non-traités est de 2% environ. Il s’agit de documents qui ne possédaient aucun style de titre (plutôt rare), ou de documents qui possédaient un style de titre non recherché : par exemple, un Titre 3. Pour traiter ces documents, le nouveau style de titre a été ajouté au script.

Rappel: une fois que les documents sont chargés dans SharePoint 2010, vous pouvez créer des règles de routage pour déplacer ces fichiers de la bibliothèque de remise vers les bibliothèques finales.

RenommerFichiersWord_V1_0_0.zip

3 réponses sur “Renommer automatiquement un document Word grâce à son contenu”

  1. bonjour,
    Pouvez vous m’aider a lancer le script (renommerfichiersword) chez moi ne marche pas ou je n’y arrive pas je clique dessus il me dit traitement termine pour 0 fichiers word . C ‘est quoi la manipulation pour le lancer. j’utilise windows10.
    Merci

    1. Bonjour,

      Consignes:
      1) FAITES UNE SAUVEGARDE DE VOS FICHIERS AVANT DE DÉMARRER LE PROGRAMME !
      2) Ouvrez RenommerFichiersWord.vbs avec un éditeur de texte comme Notepad++ ou Notepad.
      3) Indiquez le répertoire d’origine qui contient les documents Word dans la variable strDossATraiter.
      4) Indiquez le répertoire de destination dans la variable strDossDestinat. Il doit être différent de strDossATraiter.
      5) Éventuellement, modifiez les caractères indésirables de début du nom de fichier.
      6) Éventuellement, modifiez les caractères indésirables de fin du nom de fichier.
      7) Sauvegardez vos modifications.
      8) Double cliquez sur le script.
      9) Pour arrêter le script en cours d’exécution (en cas de problème), démarrez le Gestionnaire des tâches puis dans l’onglet Processus, puis sélectionnez wscript.exe, faites un clic droit puis Terminer l’arborescence du processus et ensuite fermez normalement Word.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *