首页 > 解决方案 > Word-VBA-为什么我在内容控件中输入值后占位符文本会发生变化?

问题描述

以下代码成功地插入了一个内容控件富文本,其中包含 Arial、8 字体、红色和斜体的占位符文本“test1”。但是,一旦您在内容控件中输入文本,占位符字体、大小和颜色就会变回默认设置。

如何防止占位符文本更改回默认设置?

Dim oTable As Table
Dim oCell As Cell
Dim oCC As ContentControl
Dim oNewRow As Row
    Set oTable = ActiveDocument.Tables(1)
    Set oNewRow = oTable.Rows.Add
    Set oCell = oNewRow.Cells(1)
    Set oCC = ActiveDocument.ContentControls.Add(wdContentControlRichText, oCell.Range)
    With oCC
        .DefaultTextStyle = "Style1"
        .Tag = "Test1"
        .Setplaceholdertext , , "test1"
        If oCC.ShowingPlaceholderText Then
            With oCC.Range.Font
                .Name = "Arial"
                .Size = 8
                .ColorIndex = wdRed
                .Italic = True
            End With
        End If
    End With
End Sub

标签: vbams-word

解决方案


占位符文本的格式由样式“占位符文本”定义。

如果您希望内容控件的文本在输入文本后具有特定格式,您可以为该DefaultTextStyle属性指定样式。


推荐阅读