Quelle fonction pour parcourir texte

fazazi Messages postés 10 Date d'inscription jeudi 30 juillet 2009 Statut Membre Dernière intervention 26 août 2009 - 21 août 2009 à 15:12
fazazi Messages postés 10 Date d'inscription jeudi 30 juillet 2009 Statut Membre Dernière intervention 26 août 2009 - 21 août 2009 à 23:05
Bjour,

Je cherche une fonction qui parcours un texte et lorsque un pattern est detecté( pour mon cas une succesion de point d interrogation) copie les 16 caracteres suivants .J utilise en ce moment
InStr(chaine,motif) puis les fonctions Left et Right pour decouper le passage qui m interesse , le souci que j ai ,c est que mon fichier texte est contenu dans des cases de tableau ,est lorsque un pattern est rencontre j obtiens bien la chaine de caractere qui suit , mais il passe a la case suivante du tableau et je loupe les autres patterns contenu dans cette case de tableau.

Si vous avez quelque chose mci.

7 réponses

cs_loulou69 Messages postés 672 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 2 juin 2016 1
21 août 2009 à 16:20
Bonjour
Merci de préciser, Lorsqu'un fichier texte est contenu dans des CASES de tableau, quel est l'éditeur de fichier texte ?
0
ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009
21 août 2009 à 17:28
Bonjour,

Tu dois reformuler la question. On ne comprend pas si ton texte est contenu dans un fichier texte ou dans des cellules Excel. Post ton code de manière à ce que l'ont apporte une réponse précise
0
fazazi Messages postés 10 Date d'inscription jeudi 30 juillet 2009 Statut Membre Dernière intervention 26 août 2009
21 août 2009 à 20:45
Oui excusez moi j ai pose deux problemes en meme temps , on oubli les cases du tableau , en fait le fichier de depart est un fichier texte .txt ,j ai trouve une fonction qui me le charge dans un buffer donc en resumé j'ai Buffer = mon fichier texte, comment a partir de la le parcourir et detecter chaque pattern et recuperer un certain nombre de caractere qui suit ce pattern.
0
jmf0 Messages postés 1566 Date d'inscription mardi 26 décembre 2000 Statut Membre Dernière intervention 5 avril 2013 8
21 août 2009 à 21:40
Bonjour,

il te faut alors :

"éclater" (fonction split) ton buffer avec vbcrlf ===>> tu obtiendras un Array composé de toutes les lignes que contient ton buffer)
pour chaque item de cet Array (utilise une booucle For... to... next):
- utiliser Instr pour vérifier (sur chaque ligne ainsi exposée) l'existence éventuelle de la chaîne recherchée (tu peux également utiliser et en relever la position
- "avancer" d'un caractère (fonction Mid) tant que tu trouves un "?" et relever la position du dernier "?" trouvé, puis prendre (toujours la fonction Mid) les 16 caractères suivant cette dernière position
*Voilà ! A toi de jouer, maintenant (tu as tout le mécanisme. Il te reste à écrire le code correspondant en regardant ces fonction dans l'aide en ligne)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jmf0 Messages postés 1566 Date d'inscription mardi 26 décembre 2000 Statut Membre Dernière intervention 5 avril 2013 8
21 août 2009 à 21:42
Excuse ...
Correction :
- utiliser Instr pour vérifier (sur chaque ligne ainsi exposée) l'existence éventuelle de la chaîne recherchée (tu peux également utiliser et en relever la position
0
ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009
21 août 2009 à 21:50
Pour parcourir le fichier il te faut ajouter la référence Microsoft scripting runtime à ton projet

ensuite:
Dim fso As New Scripting.FileSystemObject
Dim fs As Scripting.FileSystemObject
Dim fsostream As Scripting.TextStream
Dim sline As String
Dim stext As Variant



Set fsostream = fso.OpenTextFile("c:\test.txt")
While Not fsostream.AtEndOfStream
sline = fsostream.ReadLine
stext = Split(sline, "/")
Wend
'split créer un tableau contenant ton mot découpé par un délimiteur (ici "/")
0
fazazi Messages postés 10 Date d'inscription jeudi 30 juillet 2009 Statut Membre Dernière intervention 26 août 2009
21 août 2009 à 23:05
ok, mci a tous.
0
Rejoignez-nous