vba - 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
解决方案
占位符文本的格式由样式“占位符文本”定义。
如果您希望内容控件的文本在输入文本后具有特定格式,您可以为该DefaultTextStyle
属性指定样式。
推荐阅读
- javascript - React.StrictMode 会激活什么样的检查和警告?
- r - R中的`data.table` - 创建列和使用函数
- javascript - 带有选项组的角度材料多选下拉列表仅从每个组中选择一项?
- reactjs - 为什么反应返回解析错误:意外令牌
- reactjs - 发送一个 React.FunctionComponent
> 作为另一个组件的道具 - python - Django REST 框架:OneToMany 关系中的 NestedSerializer
- mysql - 使用 ORDER BY ... LIMIT 20; 使查询极慢
- react-native - React Native:导航服务的导航问题,无法在按下时导航
- python - Pandas 面板数据 - 返回具有年份间隔的滚动累积总和
- ffmpeg - FFMPEG - 宽度/高度不能被 2 整除(缩放以生成 MBR 输出)