Une macro pour isoler des fragments de texte - Logiciels - Windows & Software
Marsh Posté le 04-11-2013 à 01:19:21
Si, par chance "rapportlab...[blabla]...Références" se trouve sur une ligne, alors c'est très facile avec findstr
Si on a "rapportlab", puis lignes suivantes "blabla", puis ligne suivante "Références", alors c'est un peu plus compliqué, mais il y a plusieurs solutions pour y arriver.
Par exemple, en VBS (le VBS est de base sur tous les Windows depuis Windows95).
Il suffit de copier le code suivant (que j'ai testé) dans un fichier qui se termine par ".vbs", par exemple dans "mef1.vbs" (mef=mise en forme)
Const ForReading = 1, ForWriting = 2, ForAppending = 8 |
Ensuite, il faut cliquer sur mef1.vbs, et le mot "Ok" apparait indiquant que le traitement est fini, et que le nouveau fichier filtré est prêt.
---
Une autre solution est de copier le texte en lui mettant ".htm" à la fin.
Par exemple, s'il s'appelait toto.txt, il devient toto.htm.
Ensuite, on ouvre le fichier toto.htm avec un éditeur de texte (pas avec le navigateur pour le moment).
On met au début :
<html> |
On met à la fin :
--> |
On fait un remplacement (avec la fonction de remplacement de l'éditeur de texte) de la chaine "rapportlab" par la chaine "-->".
On fait un remplacement de la chaine "Références" par la chaine "<!--".
On sauvegarde.
On ouvre le fichier avec le navigateur (en cliquant de dessus ou en glissant le nom du fichier dans un navigateur déjà ouvert).
Là, on voit toutes les lignes, sauf celles qui sont en commentaires, c'est-à-dire sauf celles qui sont entre "<!--" et "-->".
On peut alors faire un copier coller de ce qui reste affiché à l'écran dans le fichier résultat.
NB. : J'ai testé aussi cette méthode.
Elle marche, sauf pour des retours à la ligne, qu'on pourra ajouter par un remplacement des fins de ligne par "<br>",
Mais ça dépend de l'éditeur alors je ne l'ai pas décrit.
Marsh Posté le 04-11-2013 à 06:57:47
Merci beaucoup Olivthill, je vais tester votre code et votre astuce immédiatement!
Marsh Posté le 03-11-2013 à 21:59:00
Parler ne fait pas cuire le riz
Bonjour,
J'ai un rapport de plusieurs centaines de pages (plus de 900) à classer.
C'est un document texte (.txt) qui a été mal informatisé, tous les paragraphes et les infos qu'ils contiennent sont entassés les uns à la suite des autres.
J'aimerais le remettre en forme rapidement, en isolant uniquement les infos recherchés.
Une chance que les passages qui m'intéressent sont systématiquement encadrés par les termes récurrents "rapportlab...[blabla]...Références" ("blabla" étant les passages qui m'intéressent, "rapportlab" et "références" les termes encadrants)
Ce que je souhaiterais, c'est qu'on m'aide à réaliser une macro capable de couper le contenu entre "rapportlab" et "références" (du fichier A) et de les coller successivement dans la première colonne d'un tableau (dans un fichier B). Ce que j'entend par successivement, c'est le premier copier-coller soit dans la colonne 1; ligne 1 du tableau, le second dans la colonne 1; ligne 2 la ligne 2, etc
Peut-être commencer par basculer de mon fichier .txt vers un format excel...
En espérant que ma difficulté soit une aisance pour d'autres, je vous remercie d'avance pour l'aide que vous pourriez m'apporter.