Saut de ligne

Résolu
soundpanther Messages postés 68 Date d'inscription vendredi 27 juillet 2007 Statut Membre Dernière intervention 31 janvier 2009 - 31 janv. 2009 à 12:15
soundpanther Messages postés 68 Date d'inscription vendredi 27 juillet 2007 Statut Membre Dernière intervention 31 janvier 2009 - 31 janv. 2009 à 13:07
Bonjour,

VB6
J'utilise ce bout code pour faire des saut de ligne tout les 100 caractères.
Je voudrais savoir si il et possible de faire ces saut seulement si un espace existe et < 100 pour évité les saut de ligne dans un mot.

Text1_Temp = Text1.Text
Text1.Text = ""
nb = Int(Len(Text1_Temp) / 100)
For i = 0 To nb
Text1.Text = Text1.Text & Mid(Text1_Temp, 100 * i + 1, 100) + vbCrLf
Next i

Merci d'avance

2 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
31 janv. 2009 à 12:53
Salut
En fait, il faut :
- Compter 100 caractères dans la chaine originale
- Refaire une boucle du 100ème vers le 1er pour tester quel est le caractère (For-Next avec "Step -1")
- Dès que tu détecte un espace, tu le remplace par un vbCrLf
et tu continues

Selon que ton texte est long ou pas, d'autres techniques que le comptage de caractères peuvent être appliqués : les tableaux avec un Split (basé sur les espaces) + une boucle d'ajout de chaque mot jusqu'à ce que la taille dépasse 100 caractères.

Regarde aussi les exemples de code que tu trouveras dans la recherche des codes en excluant .Net avec les mots "coupure texte espace" ou encore "césure texte"

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
3
soundpanther Messages postés 68 Date d'inscription vendredi 27 juillet 2007 Statut Membre Dernière intervention 31 janvier 2009
31 janv. 2009 à 13:07
Merci bc [auteur/JACK/2204.aspx jack]

Je vais commence mes testes

Merci encore
0
Rejoignez-nous