Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Remplacer les caracteres en gras seulement

5 réponses
Avatar
Pierre F.
Bonjour;

J'ai un fichier dont chaque cellule de la colonne A contient une phrase
(env. 500 phrases).

Dans chaque phrase, un, deux ou trois mots (pas forcément contigus) sont
écrits en gras.

je souhaiterais par une macro remplacer les mots en gras par des points,
récupérer les mots et les placer sur la même ligne dans la colonne B.

J'ai trouvé pas mal de macros qui recherchent un caractère précis, mais
aucune le style du caractère.

Comment faire?
Voir
http://cjoint.com/?hntihM5IL7

Merci.

Cordialement,
Pierre F.

5 réponses

Avatar
JB
Bonsoir,

For Each c In Range("A3", [A65000].End(xlUp))
temp2 = ""
temp = ""
For i = 1 To Len(c)
If c.Characters(Start:=i, Length:=1).Font.Bold = True Then
temp = temp & Mid(c, i, 1)
temp2 = temp2 & "."
Else
temp2 = temp2 & Mid(c, i, 1)
End If
Next i
c.Offset(0, 1) = temp
c.Offset(0, 2) = temp2
Next c

JB


On 13 juil, 19:09, "Pierre F." wrote:
Bonjour;

J'ai un fichier dont chaque cellule de la colonne A contient une phrase
(env. 500 phrases).

Dans chaque phrase, un, deux ou trois mots (pas forcément contigus) sont
écrits en gras.

je souhaiterais par une macro remplacer les mots en gras par des points,
récupérer les mots et les placer sur la même ligne dans la colonne B.

J'ai trouvé pas mal de macros qui recherchent un caractère précis, mais
aucune le style du caractère.

Comment faire?
Voirhttp://cjoint.com/?hntihM5IL7

Merci.

Cordialement,
Pierre F.


Avatar
isabelle
bonjour Pierre,

Sub Macro1()
For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row)
For i = 1 To Len(c)
x = c.Characters(Start:=i, Length:=1).Font.FontStyle
If x <> "Normal" Then
Cells(c.Row, 2) = Cells(c.Row, 2) & Mid(c, i, 1)
End If
Next
Next
For Each c In Range("B3:B" & Range("A65536").End(xlUp).Row)
For i = 1 To Len(c)
x = x & "."
Next
Cells(c.Row, 1) = Application.Substitute(Cells(c.Row, 1), Cells(c.Row, 2), x)
x = ""
Next
End Sub


isabelle


Bonjour;

J'ai un fichier dont chaque cellule de la colonne A contient une phrase
(env. 500 phrases).

Dans chaque phrase, un, deux ou trois mots (pas forcément contigus) sont
écrits en gras.

je souhaiterais par une macro remplacer les mots en gras par des points,
récupérer les mots et les placer sur la même ligne dans la colonne B.

J'ai trouvé pas mal de macros qui recherchent un caractère précis, mais
aucune le style du caractère.

Comment faire?
Voir
http://cjoint.com/?hntihM5IL7

Merci.

Cordialement,
Pierre F.


Avatar
isabelle
correction :

Sub Macro1()
For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row)
For i = 1 To Len(c)
x = c.Characters(Start:=i, Length:=1).Font.FontStyle
If x <> "Normal" Then
Cells(c.Row, 2) = Cells(c.Row, 2) & Mid(c, i, 1)
End If
Next
Next
For Each c In Range("B3:B" & Range("A65536").End(xlUp).Row)
For i = 1 To Len(c)
y = y & "."
Next
Cells(c.Row, 1) = Application.Substitute(Cells(c.Row, 1), Cells(c.Row, 2), y)
y = ""
Next
End Sub


isabelle


Bonjour;

J'ai un fichier dont chaque cellule de la colonne A contient une phrase
(env. 500 phrases).

Dans chaque phrase, un, deux ou trois mots (pas forcément contigus) sont
écrits en gras.

je souhaiterais par une macro remplacer les mots en gras par des points,
récupérer les mots et les placer sur la même ligne dans la colonne B.

J'ai trouvé pas mal de macros qui recherchent un caractère précis, mais
aucune le style du caractère.

Comment faire?
Voir
http://cjoint.com/?hntihM5IL7

Merci.

Cordialement,
Pierre F.


Avatar
JB
http://boisgontierjacques.free.fr/fichiers/Chaines/ExtraitGras.xls

JB
On 13 juil, 19:09, "Pierre F." wrote:
Bonjour;

J'ai un fichier dont chaque cellule de la colonne A contient une phrase
(env. 500 phrases).

Dans chaque phrase, un, deux ou trois mots (pas forcément contigus) sont
écrits en gras.

je souhaiterais par une macro remplacer les mots en gras par des points,
récupérer les mots et les placer sur la même ligne dans la colonne B.

J'ai trouvé pas mal de macros qui recherchent un caractère précis, mais
aucune le style du caractère.

Comment faire?
Voirhttp://cjoint.com/?hntihM5IL7

Merci.

Cordialement,
Pierre F.


Avatar
Pierre F.
Mille mercis à tous les deux; vos propositions fonctionnent à merveille

Cordialement,
Pierre F.