You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用VBA仅为Word文档中部分文本设置加粗格式

解决Word中部分文本单独设置格式的问题

你的问题根源在于对Word的Range对象理解偏差:wdDoc.Content指向的是整个文档的内容范围,当你后续修改.Font.Bold属性时,会覆盖整个Range的格式,导致要么全部加粗、要么全部不加粗。以下是两种可行的修正方案:

方案一:插入后折叠Range(推荐)

每次插入文本后,将Range折叠到当前内容的末尾,这样后续操作只会影响新插入的内容,不会改动已设置好格式的文本:

Sub TestBoldToWordDocument() 
    Dim wdApp As Object 
    Dim wdDoc As Object 
    Dim WordRange As Object 

    ' 创建Word应用并新建文档
    Set wdApp = CreateObject("Word.Application") 
    wdApp.Visible = True 
    Set wdDoc = wdApp.Documents.Add 
    Set WordRange = wdDoc.Content 

    ' 插入并设置"Severity:"为加粗
    With WordRange
        .InsertAfter "Severity: "
        .Font.Bold = True
        ' 折叠Range到末尾(Late Binding下直接用0代替wdCollapseEnd常量)
        .Collapse Direction:=0
    End With 

    ' 插入表格内容并设置为不加粗
    With WordRange
        .InsertAfter Sheets("CleanSheet").Cells(2, 2).Value & vbCr
        .Font.Bold = False
    End With 

    ' 释放对象
    Set WordRange = Nothing
    Set wdDoc = Nothing
    Set wdApp = Nothing
End Sub

方案二:定位文本范围单独设置格式

先插入所有文本,再通过位置定位选中"Severity:"片段,单独设置加粗格式:

Sub TestBoldToWordDocument() 
    Dim wdApp As Object 
    Dim wdDoc As Object 
    Dim WordRange As Object 
    Dim startPos As Long, endPos As Long

    ' 创建Word应用并新建文档
    Set wdApp = CreateObject("Word.Application") 
    wdApp.Visible = True 
    Set wdDoc = wdApp.Documents.Add 
    Set WordRange = wdDoc.Content 

    ' 一次性插入所有文本
    WordRange.InsertAfter "Severity: " & Sheets("CleanSheet").Cells(2, 2).Value & vbCr

    ' 定位"Severity:"的范围并设置加粗
    startPos = WordRange.Start
    endPos = startPos + Len("Severity: ")
    Set WordRange = wdDoc.Range(startPos, endPos)
    WordRange.Font.Bold = True

    ' 释放对象
    Set WordRange = Nothing
    Set wdDoc = Nothing
    Set wdApp = Nothing
End Sub

关键说明

  • Word的Range是一段连续的文本区域,格式修改会作用于整个区域
  • Collapse方法可以将Range收缩到起点(wdCollapseStart=1)或终点(wdCollapseEnd=0),Late Binding模式下没有内置常量,直接使用对应数值即可
  • 方案一更适合逐步插入并设置格式的场景,方案二更适合修改已有文本格式的场景

内容的提问来源于stack exchange,提问作者Jim Luther

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 16:05:30