如何用vba设置word文档段落的各种缩进? 您所在的位置:网站首页 设置格式首行缩进 如何用vba设置word文档段落的各种缩进?

如何用vba设置word文档段落的各种缩进?

2024-07-10 05:59| 来源: 网络整理| 查看: 265

如何用vba设置word文档段落的各种缩进? 2019年7月4日 作者:水星Excel 9,612 次浏览 暂无评论

在word中可以设置word文档段落的各种缩进格式,比如首行缩进、悬挂缩进、整体缩进等。

接下来介绍如何用vba设置段落的各种缩进格式:

一、首行缩进N个字符

要设置段落的首行缩进为N个字符,可以使用Paragraph对象的IndentFirstLineCharWidth方法。

代码如下:

Sub QQ1722187970() Dim oDoc As Document Dim oP As Paragraph Dim oRng As Range Set oDoc = Word.ActiveDocument With oDoc Debug.Print .Paragraphs.Count Set oP = .Paragraphs(1) With oP '先设置参数为一个极大的负值,取消首行缩进 .IndentFirstLineCharWidth -10000 '然后首行缩进3个字符 .IndentFirstLineCharWidth 6 End With End With End Sub

Paragraph对象的IndentFirstLineCharWidth方法如果参数设置为负值,将取消对应的首行缩进字符数。

二、段落整体左侧缩进N个字符

要设置段落整体左侧缩进为N个字符,可以使用Paragraph对象的IndentCharWidth方法。

代码如下:

Sub QQ1722187970() Dim oDoc As Document Dim oP As Paragraph Dim oRng As Range Set oDoc = Word.ActiveDocument With oDoc Debug.Print .Paragraphs.Count Set oP = .Paragraphs(1) With oP ' 先设置参数为一个极大的负值,取消段落的整体左侧缩进 .IndentCharWidth -1000 ' 取消首行缩进 .IndentFirstLineCharWidth -10000 ' 然后整个段落缩进10个字符 .IndentCharWidth 10 End With End With End Sub

Paragraph对象的IndentCharWidth方法如果参数设置为负值,将取消对应的整体缩进字符数。

三、段落整体缩进N个制表位

要设置段落整体左侧缩进为N个制表位,需要调用N次Paragraph对象的Indent方法,如果要取消缩进制表位,可以调用Paragraph对象的Outdent方法。

代码如下:

Sub QQ1722187970() Dim oDoc As Document Dim oP As Paragraph Dim oRng As Range Set oDoc = Word.ActiveDocument With oDoc Debug.Print .Paragraphs.Count Set oP = .Paragraphs(1) With oP '缩进1个制表位 .Indent '缩进2个制表位 .Indent .Outdent .Outdent End With End With End Sub

比起多次调用Paragraph对象的Indent方法,还可以直接使用Paragraph对象的TabIndent方法,代码如下:

Sub QQ1722187970() Dim oDoc As Document Dim oP As Paragraph Dim oRng As Range Set oDoc = Word.ActiveDocument With oDoc Debug.Print .Paragraphs.Count Set oP = .Paragraphs(1) With oP .TabIndent -100 .TabIndent 2 End With End With End Sub

四、段落悬挂缩进N个字符

在vba中没有内置直接设置悬挂缩进几个字符的方法,但是内置了悬挂缩进几个制表位的方法。

使用Paragraph对象的TabHangingIndent方法,可以设置悬挂缩进几个制表位,由于默认1个制表位代表N个字符,通过这个关系可以设置悬挂缩进几个字符。

以下代码先设置默认的制表位为2个字符(0.74厘米),然后再悬挂缩进2个制表位,等于悬挂缩进4个字符。

Sub QQ1722187970() Dim oDoc As Document Dim oP As Paragraph Dim oRng As Range Set oDoc = Word.ActiveDocument With oDoc '设置默认的制表位为2个字符,0.74厘米 .DefaultTabStop = Word.Application.CentimetersToPoints(0.74) Set oP = .Paragraphs(1) With oP '悬挂缩进4个字符 .TabHangingIndent 2 End With End With End Sub 其它相关文章推荐:如何用vba删除word文档中的段落?如何用vba获取word文档中某个段落的前、后段落的内容?如何用vba遍历word文档中的所有标题样式?如何用vba在word文档中实现文本内容的修改、删除、添加等各种操作?如何用vba操作word的编号列表项?如何用vba新增、修改、删除word中的制表位? 分类 :  VBA , WORD VBA 标签 :  Indent , IndentCharWidth , IndentFirstLineCharWidth , TabHangingIndent , TabIndent , 制表位 , 厘米 , 字符 , 悬挂缩进 , 整体缩进 , 缩进 , 首行缩进        

声明: 本站文章均属原创,未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则视为侵权。如果想要每天都收到本站的技术文章推送,可以微信搜索公众号:水星Excel或者Excel_Office关注。其它事宜请加QQ:1722187970 或微信号:xycgenius 联系。 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有