WORD文档中的宏代码操作(表格批量调整文字居中+去除所有批注)

表格操作

以下是原表格示例:
原表格示例

运行以下代码:

Sub 表格内容批量垂直居中()

For i = 1 To ActiveDocument.Tables.Count
    With ActiveDocument.Tables(i)
    .Range.Cells.VerticalAlignment = wdCellAlignVerticalCenter '单元格上下居中
    End With
Next i

End Sub

表格中单元格内容上下居中显示,主要代码为:

.Range.Cells.VerticalAlignment = wdCellAlignVerticalCenter

效果:
表格中单元格内容上下居中显示
运行以下代码:

Sub 表格内容批量水平居中()

For i = 1 To ActiveDocument.Tables.Count
    With ActiveDocument.Tables(i)  
    .Range.ParagraphFormat.Alignment = wdAlignParagraphCenter '水平居中
    End With    
Next i

End Sub

表格中单元格内容左右居中显示,主要代码为:

.Range.ParagraphFormat.Alignment = wdAlignParagraphCenter

效果:
表格中单元格内容左右居中显示

表格中文字上下左右均居中显示,运行以下代码:

Sub 表格内容批量居中()

For i = 1 To ActiveDocument.Tables.Count
    With ActiveDocument.Tables(i)
    .Range.ParagraphFormat.Alignment = wdAlignParagraphCenter '水平居中
    .Range.Cells.VerticalAlignment = wdCellAlignVerticalCenter '单元格上下居中
    End With
Next i

End Sub

效果:
表格中文字上下左右均居中显示
表格水平对齐窗口,运行以下代码:

Sub 表格批量水平对齐窗口()

For i = 1 To ActiveDocument.Tables.Count
    With ActiveDocument.Tables(i)
    .AutoFitBehavior (wdAutoFitWindow) '根据窗口调整内容
    End With
Next i

End Sub

效果:
表格水平对齐窗口
表格批量居中,运行以下代码:

Sub 表格批量居中()

For i = 1 To ActiveDocument.Tables.Count

    With ActiveDocument.Tables(i)
    .AutoFitBehavior (wdAutoFitWindow) '根据窗口调整内容
    .Range.ParagraphFormat.Alignment = wdAlignParagraphCenter '水平居中
    .Range.Cells.VerticalAlignment = wdCellAlignVerticalCenter '单元格上下居中
    End With
 
Next i

End Sub

效果:
在这里插入图片描述

去除所有批注

原批注状态如下图:
原批注状态
删除所有批注,执行以下代码:

Sub DeleteAllComments()

    Dim comment As comment
    For Each comment In ActiveDocument.Comments
    comment.Delete
    Next comment

End Sub

等同于在页面操作:
手动操作图

批注全部删除效果:
删除批注状态

批量操作所有文档

原文件夹文档:
待执行代码的文件

文档内容:
1
2
3
编写宏代码:(删除原文件夹内所有文件中的批注,并调整文件表格格式)

  • 删除批注

Sub DeleteAllComments() '删除批注
    Dim comment As comment
    For Each comment In ActiveDocument.Comments
    comment.Delete
    Next comment
End Sub
  • 调整表格
Sub AdjustTable()  '调整表格
For i = 1 To ActiveDocument.Tables.Count
    With ActiveDocument.Tables(i)
    .AutoFitBehavior (wdAutoFitWindow) '根据窗口调整内容
    .Range.ParagraphFormat.Alignment = wdAlignParagraphCenter '水平居中
    .Range.Cells.VerticalAlignment = wdCellAlignVerticalCenter '单元格上下居中
    End With
Next i
End Sub
  • 批量执行(调用上方两个函数)
Sub 批量调整文件格式()
   Dim path      As String
   Dim FileName  As String
   Dim worddoc   As Document
   Dim MyDir     As String
   MyDir = "C:\Users\XiaoYao\Desktop\测试"  '文件夹路径根据需要自己修改,需要处理的文件都放该文件夹内
   FileName = Dir(MyDir & "\*.doc*", vbNormal)
   Do Until FileName = ""
   If FileName <> ThisDocument.Name Then
         Set worddoc = Documents.Open(MyDir & "\" & FileName)
         worddoc.Activate
         Call AdjustTable '调用宏,换成你自己宏的名字
         Call DeleteAllComments  '调用宏,换成你自己宏的名字
         worddoc.Close True
         FileName = Dir()
    End If
   Loop
Set worddoc = Nothing
End Sub

执行宏代码:
执行宏代码
执行后,路径下的文件会一个个打开自动完成代码执行效果后关闭,得结果:
调整完毕所有文件
对应效果如下:
调整后1
调整后2
调整后3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值