Insérer le texte en gras dans Word à l'aide de VBA
J'ai écrit un petit script que les exportations de certains Excel les valeurs des cellules dans Word. Cependant, certains inserts doivent être en gras. Et il ne semble pas être un moyen facile de le faire.
Ce code parcourt les enregistrements et les ajoute au document Word
Do While intRow < intTotalRows + 1
strTemp = " ;b;" & Range("G" & intRow).FormulaR1C1 & " " & Range("I" & intRow).FormulaR1C1 & ";e; "
If strTemp <> strCur Then
strCur = strTemp
.Content.Font.Bold = True
.Content.InsertAfter strCur
End If
.Content.Font.Bold = False
.Content.InsertAfter Range("A" & intRow).FormulaR1C1 & " - " & Range("C" & intRow).FormulaR1C1 & " " & Range("E" & intRow).FormulaR1C1 & " * "
intRow = intRow + 1
Loop
Allumer gras avant d'insérer du texte et de l'éteindre à nouveau par la suite semble être la solution la plus logique, donc il ne fonctionne pas.
J'ai ensuite essayé de rechercher et remplacer du texte, mais qui n'a pas fonctionné:
.Content.Find.ClearFormatting
With .Content.Find
.Text = ";b;" 'Look for
.Replacement.Text = ";bbb;" 'Replace with
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
.Content.Find.Execute Replace:=wdReplaceAll
OriginalL'auteur skerit | 2010-10-19
Vous devez vous connecter pour publier un commentaire.
Remplacer
.InsertAfter
avec.TypeText
. L'insertion d'œuvres comme le collage alors queTypeText
fonctionne comme si que vous auriez fait taper du texte sur le clavier.OriginalL'auteur Dirk Vollmar