Vba 在Word文档中循环设置文本格式
我有一个巨大的文档,其中以某些特定单词开头的行应该更改文本样式。我已经为所有这些单词创建了一个数组,并尝试使用for循环格式化文档。但是,只有数组中第一个单词的样式发生了更改,而不是数组中的所有单词 下面是我所做的,请看一下并提出解决方案:Vba 在Word文档中循环设置文本格式,vba,for-loop,ms-office,ms-word,Vba,For Loop,Ms Office,Ms Word,我有一个巨大的文档,其中以某些特定单词开头的行应该更改文本样式。我已经为所有这些单词创建了一个数组,并尝试使用for循环格式化文档。但是,只有数组中第一个单词的样式发生了更改,而不是数组中的所有单词 下面是我所做的,请看一下并提出解决方案: Sub Variables_NormalTxt() Dim oRng As Word.Range Dim oRngFC As Word.Range Dim varUbyteNormal As Variant Dim Array
Sub Variables_NormalTxt()
Dim oRng As Word.Range
Dim oRngFC As Word.Range
Dim varUbyteNormal As Variant
Dim ArrayItem As String
Dim i As Integer
varUbyteNormal = Array("uword", "ubyte", "bool", "sword", "const", "ulong", "static")
Set oRng = ActiveDocument.Range
i = 0
For i = 0 To UBound(varUbyteNormal)
With oRng.Find
.Text = varUbyteNormal(i)
.Font.Name = "Times New Roman"
.Font.Bold = False
.Font.size = 10
While .Execute
oRng.Select
Set oRngFC = ActiveDocument.Bookmarks("\Line").Range
oRngFC.Style = "variable normal"
Wend
End With
Next i
End Sub
移动这条线
Set oRng = ActiveDocument.Range
进入For循环
i、 e
等等
顺便说一下
您可以删除该行
i = 0
您的For语句可以概括为
For i = LBound(varUbyteNormal) To UBound(varUbyteNormal)
也许其他人会提出其他改进建议
(…进一步研究表明,这取决于precisley
(你在找什么)
移动这条线
Set oRng = ActiveDocument.Range
进入For循环
i、 e
等等
顺便说一下
您可以删除该行
i = 0
您的For语句可以概括为
For i = LBound(varUbyteNormal) To UBound(varUbyteNormal)
也许其他人会提出其他改进建议
(…进一步研究表明,这取决于precisley
(你在找什么)
移动这条线
Set oRng = ActiveDocument.Range
进入For循环
i、 e
等等
顺便说一下
您可以删除该行
i = 0
您的For语句可以概括为
For i = LBound(varUbyteNormal) To UBound(varUbyteNormal)
也许其他人会提出其他改进建议
(…进一步研究表明,这取决于precisley
(你在找什么)
移动这条线
Set oRng = ActiveDocument.Range
进入For循环
i、 e
等等
顺便说一下
您可以删除该行
i = 0
您的For语句可以概括为
For i = LBound(varUbyteNormal) To UBound(varUbyteNormal)
也许其他人会提出其他改进建议
(…进一步研究表明,这取决于precisley
(你在找什么)
您从不使用搜索结果,只使用一些不相关的局部变量。即使是第一个单词,我也看不出样式会发生什么变化。@GSerg:在oRng.Select之后,内置书签“\Line”将指向感兴趣的区域。这很笨拙,但我现在还并没有时间对那个部分进行测试修复——也许你们有?你们从来并没有使用搜索结果,只是一些不相关的局部变量。即使是第一个单词,我也看不出样式会发生什么变化。@GSerg:在oRng.Select之后,内置书签“\Line”将指向感兴趣的区域。这很笨拙,但我现在还并没有时间对那个部分进行测试修复——也许你们有?你们从来并没有使用搜索结果,只是一些不相关的局部变量。即使是第一个单词,我也看不出样式会发生什么变化。@GSerg:在oRng.Select之后,内置书签“\Line”将指向感兴趣的区域。这很笨拙,但我现在还并没有时间对那个部分进行测试修复——也许你们有?你们从来并没有使用搜索结果,只是一些不相关的局部变量。即使是第一个单词,我也看不出样式会发生什么变化。@GSerg:在oRng.Select之后,内置书签“\Line”将指向感兴趣的区域。这是笨拙的,但我现在没有时间做一个测试修复的部分-也许你有?