我编写了一个小脚本,将某些 Excel 单元格值导出到 Word 中。但是,某些插入内容需要加粗。似乎没有一个简单的方法可以做到这一点。
此代码循环遍历记录并将它们添加到 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
在插入文本之前打开粗体并在插入文本之后再次关闭它似乎是最合乎逻辑的解决方案,因此它不起作用。
然后我尝试查找并替换文本,但这也不起作用:
.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
Replace .InsertAfter
with .TypeText
。插入的工作方式类似于粘贴,而TypeText
就像您实际在键盘上键入文本一样。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)