word代码改变文本格式
以前做过的代码找一段出来供参考。
Private Sub CommandButton4_Click() '排版格式
Dim T_WORD As String
Dim RNG As Range
Dim mypra As Paragraph
Set mydic = CreateObject("Scripting.Dictionary") '二级标题字符
mydic.Add "一", 1
mydic.Add "二", 1
mydic.Add "三", 1
mydic.Add "四", 1
mydic.Add "五", 1
mydic.Add "六", 1
mydic.Add "七", 1
mydic.Add "八", 1
mydic.Add "九", 1
mydic.Add "十", 1
T_WORD = TextBox1.Text
导出路径文件名 = ThisDocument.Path & "\" & T_WORD
Set mydoc = Documents.Open(导出路径文件名)
mydoc.Activate
Selection.WholeStory '选中全部
Selection.ClearFormatting '清除全部格式
zz = 0
'For Each mypra In ActiveDocument.Paragraphs
For Each mypra In mydoc.Paragraphs
If Not mypra.Range.Information(wdWithInTable) = True Then '非表格段落
zz = zz + 1
MYSTR = mypra.Range.Text
mychar = Mid(MYSTR, 1, 1)
'mypra.Select
If zz = 1 Or zz = 2 Then '一级标题 黑体 小二 是 居中 1行 1行 固定值18磅 无
With mypra
.Range.Font.Name = "黑体"
.Range.Font.Size = 18 '(小二高度18磅)
.Range.Font.Bold = True
.Range.ParagraphFormat.Alignment = wdAlignParagraphCenter
.Range.ParagraphFormat.LineUnitBefore = 1
.Range.ParagraphFormat.LineUnitAfter = 1
'.Range.ParagraphFormat.SpaceBefore = 10.5 '段前 1123修改为5号10.5磅
'.Range.ParagraphFormat.SpaceAfter = 10.5 '段后
.FirstLineIndent = 0 '首行缩进无
.LineSpacingRule = wdLineSpaceExactly
'.LineSpacingRule = wdLineSpace1pt5
.Range.ParagraphFormat.LineSpacing = 18 '行间距18磅
End With
Else
If mydic.Exists(mychar) Then '二级标题 黑体 小四 是 两端对齐 1行 1行 固定值18磅 首行缩进2字符
With mypra
.Range.Font.Name = "黑体"
.Range.Font.Size = 12
.Range.Font.Bold = True
.Range.ParagraphFormat.Alignment = wdAlignParagraphJustify
.Range.ParagraphFormat.LineUnitBefore = 1
.Range.ParagraphFormat.LineUnitAfter = 1
'.Range.ParagraphFormat.SpaceBefore = 10.5 '段前 小四高度=12磅 1123修改为5号10.5磅
'.Range.ParagraphFormat.SpaceAfter = 10.5 '段后
'.FirstLineIndent = CentimetersToPoints(1.27) '首行缩进2字符 0.635*2=1.27
.FirstLineIndent = CentimetersToPoints(0.74) '首行缩进2字符 0.74 和正文相同
' .LineSpacingRule = wdLineSpace1pt5
.LineSpacingRule = wdLineSpaceExactly
.Range.ParagraphFormat.LineSpacing = 18 '行间距18磅
End With
Else '正文 宋体 五号 否 两端对齐 0行 0.5行 固定值18磅 首行缩进2字符
With mypra
.Range.Font.Name = "宋体"
.Range.Font.Size = 10.5
.Range.Font.Bold = False
.Range.ParagraphFormat.Alignment = wdAlignParagraphJustify
'.Range.ParagraphFormat.SpaceBefore = 0 '段前0
'.Range.ParagraphFormat.SpaceAfter = 5.25 '段后0.5*10.5=5.25
.Range.ParagraphFormat.LineUnitBefore = 0
.Range.ParagraphFormat.LineUnitAfter = 0.5
.FirstLineIndent = CentimetersToPoints(0.74) '0.37*2=0.74
.LineSpacingRule = wdLineSpaceExactly
.Range.ParagraphFormat.LineSpacing = 18 '行间距18磅
.Alignment = wdAlignParagraphJustify
End With
If zz = 3 Then '第3段落居中
With mypra
.Range.ParagraphFormat.Alignment = wdAlignParagraphCenter
End With
End If
End If
End If
End If
Next mypra
mydoc.Save
mydoc.Close False '关闭word文档
Set mydoc = Nothing '清空工作簿项目
End Sub
多重随机标签
九宫格520朋友圈文案 神牛摄影器材有限公司公司介绍 vips是什么意思 成都卓拙科技有限公司怎么样 网页的标准尺寸是什么都有哪些尺寸的分类 移动微表单是什么意思 农产品概念股推荐 农产品龙头股有哪些 网剧和电视剧的区别 常州工学院在哪里 附准确地址 搜狗浏览器怎么样 潍坊仿木凉亭 外企在东莞可以不成立工会吗 在农村建一个200平米的别墅 地皮是自己的 不装修的话大概需要多少钱 商品房备案密码是什么 2022年邯郸磁县公开招聘播音主持工作人员公告 泰州信亦同晨网络科技有限公司怎么样 安阳有哪些本地人排队也要打卡的火锅店 好玩的烹饪游戏单击不要网页游戏 横版电脑网络游戏_好玩的横版电脑游戏 怎么选择国外服务器 曲阜杏坛励耘班怎样报名 柳州职业技术学院社湾校区面积 crm系统哪家公司做的最好 建筑公司名字简单易记 比较顺口的建筑公司名字 车来车网服务理念 燃气公司会回收设备吗 幼儿园开设家长学堂的好处和弊端有哪些 如何加盟去做快递代收 建筑业三类人员查询指南 哪个网站能查询建筑施工企业的资质