写了一段改标题样式的代码,一级和二级都更改成功了,三级标题却没有反映,望大神帮看看!

cv521zw 2017-09-06 04:38:21
代码:
sub myfunc()
Dim i As Paragraph
For Each i In ActiveDocument.Paragraphs
If i.Range Like "[一二三四五六七八九十]、*" Or i.Range Like "[一二三四五六七八九十][一二三四五六七八九十百]、*" Or i.Range Like "[二三四五六七八九]十[一二三四五六七八九]、*" Or i.Range Like "[一二三四五六七八九]百[一二三四五六七八九零][一二三四五六七八九十]、*" Or i.Range Like "[一二三四五六七八九]百[一二三四五六七八九]十[一二三四五六七八九]、*" Then
i.Range.Font.Name="黑体"
i.Range.Font.Size=16
ElseIf i.Range Like "([一二三四五六七八九十])*" Or i.Range Like "([二三四五六七八九十][一二三四五六七八九十])*" Or i.Range Like "([二三四五六七八九]十[一二三四五六七八九])*" Then
i.Range.Font.Name="楷体"
i.Range.Font.Size=16
ElseIf i.Range Like "#.*" Or i.Range Like "##.*" Or i.Range Like "###.*" Or i.Range Like "####.*" Then
i.Range.Font.Bold=True
End If
Next
end sub
上面改一级标题和二级标题的代码都成功了,三级的代码else if 没进去不知道怎么回事 希望大神帮看看。

一、 一级标题---成功更改
(一) 二级标题---成功更改
3.三级标题---没变化
(4)正文
...全文
1939 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
cv521zw 2017-09-07
  • 打赏
  • 举报
回复
引用 2 楼 cv521zw 的回复:
[quote=引用 1 楼 Chen8013 的回复:] 没有样本文档,无法确认啊。 会不会是“三级标题”的那个“点”,文档中跟代码中不一致?   你写的代码中是中文的“.”,文档中是不是这个点呢? 还有一个问题:   象这样“有规律的序号”,在编辑时,MS Office肯定会自作聪明的给你变成“项目序号”了,   会不是你的“三级”标题在文档中看起来是“有序号的”,而代码中 i.Range 的内容却不会把这个“序号”包含进去?
我刚刚尝试了 谢谢您的提醒 那个点在代码中确实有问题,更改后就没问题了 谢谢
cv521zw 2017-09-07
  • 打赏
  • 举报
回复
引用 1 楼 Chen8013 的回复:
没有样本文档,无法确认啊。 会不会是“三级标题”的那个“点”,文档中跟代码中不一致?   你写的代码中是中文的“.”,文档中是不是这个点呢? 还有一个问题:   象这样“有规律的序号”,在编辑时,MS Office肯定会自作聪明的给你变成“项目序号”了,   会不是你的“三级”标题在文档中看起来是“有序号的”,而代码中 i.Range 的内容却不会把这个“序号”包含进去?
是这样的 我是在txt文档中手写的无样式的文档(样本文档就是上面一级标题,二级标题那个),复制到word中更改样式的,您说的序号的问题,因为我是初学,您能说的具体点吗,点的问题txt文档中中文跟英文看不出区别,我会尝试一下的
舉杯邀明月 2017-09-06
  • 打赏
  • 举报
回复
没有样本文档,无法确认啊。 会不会是“三级标题”的那个“点”,文档中跟代码中不一致?   你写的代码中是中文的“.”,文档中是不是这个点呢? 还有一个问题:   象这样“有规律的序号”,在编辑时,MS Office肯定会自作聪明的给你变成“项目序号”了,   会不是你的“三级”标题在文档中看起来是“有序号的”,而代码中 i.Range 的内容却不会把这个“序号”包含进去?

2,503

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧