vba - 将宏运行到特定样式
问题描述
下面的代码试图将小写的单词转换为大写。但是,我只需要以特定的文字样式(“普通”)运行它。我试图将 doc 设置为 ActiveDocument.Styles("Normal") 但我不断收到错误。任何帮助都是最有帮助的。先感谢您。
Option Explicit
Public Sub TitleCaseDocument()
Dim doc As Document: Set doc = ActiveDocument.Styles("Normal")
Dim wrd As Range
For Each wrd In doc.Words
If wrd.Text <> UCase$(wrd.Text) Then wrd.Case = wdTitleWord
Next
End Sub
解决方案
那么,如果样式正常,您是否要将小写字母更改为大写字母?是的?我对单词没有丰富的经验,但也许这样的东西可以帮助你(基于你的代码):
Public Sub TitleCaseDocument()
Dim doc As Document: Set doc = ActiveDocument
Dim wrd As Range
For Each wrd In doc.Words
If wrd.Text <> UCase$(wrd.Text) And wrd.Style = "Normal" Then
wrd.Text = UCase$(wrd.Text)
End If
Next
End Sub
推荐阅读
- django - 如何更改 django 默认注销成功模板?
- jinja2 - jinja ansible - 循环对字典中的值求和
- import - 从具有时间格式的文本文件中导入 sql
- git - 修复 git add --patch 上的缩进
- javascript - 如何在 jquery 中使用附加按钮
- group-by - Big Query - 按顺序分组
- python - 对于 Visual Clarity,如何更改 vscode 中“撇号”和“引号”的语法颜色?
- javascript - 在 JSP 页面中使用 JavaScript 调用 Java 方法
- reactjs - 反应传递道具打字稿语法
- javascript - 此 js 代码在 html 文件中不起作用。但是,当我将代码粘贴到控制台时,相同的 js 代码可以工作