Visualisation du texte par "tranche"

Bonjour le forum,

Je voudrais demander votre aide pour résoudre le problème suivant:

J'ai un formulaire dans lequel les cellules d'une des colonnes sont remplies par le «texte libre». Le texte peut être écrit manuellement par l'utilisateur, ou collé d’une source extérieure. La longueur du texte est illimitée et n'est pas si important. J'ai besoin de trouver un moyen par lequel le texte est automatiquement divisé en segments de 34 caractères et cette «séparation» sera vue.

Exemple:

L’appareil sera utilisé par les étudiants pendant les vacances scolaires sous la responsabilité du Monsieur Bernhardt.

Le texte a une longueur de 118 caractères, espaces compris. Je voudrais être en mesure de voir les 34 premiers caractères sans changement, les caractères 35-68 en gras, 69-102 - nouveau dans son format original, 103-118 - en gras (comme ici).

Quelqu'un peut-il suggérer des moyens de résoudre ce problème?

Merci d’avance,

Baton

Bonjour

Clic droit sur le nom de la feuille ---> Visualiser le code

sans la fenêtre tu y colles cette macro

Private Sub Worksheet_Change(ByVal Target As Range)
Dim I As Integer

If Target.Count > 1 Then Exit Sub
  I = 35
  While Len(Target) - I > 0
    Target.Characters(Start:=I, Length:=34).Font.FontStyle = "Gras"
    I = I + 68
  Wend
End Sub

Banzay,

merci pour ton attention à ma demande.

J'utilise MAC et pas PC. J'ai mis le code dans le feuille et rajouté un texte pour tester.

Le premiers 34 caractères gardent, comme il faut, leur format d'origine (des lettre sont "maigres"). Le souci est que toutes les lettres à partir du 35-ème caractère sont "gras", tandis qu'il faut les avoir selon le modèle maigre-gros-maigre-gros... et chaque tranche durera 34 caractères.

La plage où ça sera utilisé est G10:G49, le nom de la feuille est "Com_eq".

Merci,

Baton

Banzai64 a écrit :

Bonjour

Clic droit sur le nom de la feuille ---> Visualiser le code

sans la fenêtre tu y colles cette macro

Private Sub Worksheet_Change(ByVal Target As Range)
Dim I As Integer

If Target.Count > 1 Then Exit Sub
  I = 35
  While Len(Target) - I > 0
    Target.Characters(Start:=I, Length:=34).Font.FontStyle = "Gras"
    I = I + 68
  Wend
End Sub

Bonjour

Moi je ne vois pas pourquoi tu n'as que les 34 premiers caractères de bon

Résultat sur PC

maigre gras baton

Désolé je ne peux pas t'aider plus

Banzai64 a écrit :

Bonjour

Moi je ne vois pas pourquoi tu n'as que les 34 premiers caractères de bon

Résultat sur PC

Désolé je ne peux pas t'aider plus


Banzai,

merci pour ton aide. Je chercherai pourquoi on vois différemment. Peut être, le VBA syntaxe pour PC n'est pas le même

comme pour le MAC

merci.

Banzai64 a écrit :

Bonjour

Moi je ne vois pas pourquoi tu n'as que les 34 premiers caractères de bon

Résultat sur PC

Désolé je ne peux pas t'aider plus

Banzai,

Mon ordi a réussi de se reposer bien pendant le week-end et maintenant le code, que tu m'a envoyé, fonctionne sans souci.

Merci!

Cordialement,

Baton

Rechercher des sujets similaires à "visualisation texte tranche"