1. 找到工具栏中“视图-》宏”
![](https://img-blog.csdnimg.cn/15d7b4333f11460996635011285425c4.png)
2. 选择“查看宏”
3. 创建/编辑宏
4. 修改“表格背景和设定字体大小”代码
如图:
代码块:
Sub 修改表格字体()
'
' 修改表格字体 宏
'
'
For i = 1 To ActiveDocument.Tables.CountDim t As TableSet t = ActiveDocument.Tables(i)With t'断开活动文档的第1个表格的域的链接.Range.Fields.Unlink'关于字体的各项设置,可以通过录制宏得到
' Range.Font 属性
' 返回或设置 Font 对象,该对象代表指定对象的字符格式With .Range.Font.NameFarEast = "宋体" '中文字体.NameAscii = "宋体" '西文字体.Size = 10.5 '字号End WithWith t.Rows(1).Shading.BackgroundPatternColor = wdColorWhite '设置第一行的背景颜色为白色End WithEnd With
Next i
End Sub
5. “运行”,运行中有错误会提示
文档有些较大的,运行时间教长,需要耐心等待~
其他代码可参考
1)设置表格的字体
Sub 设置表格的字体()Dim t As TableSet t = ActiveDocument.Tables(1)With t'断开活动文档的第1个表格的域的链接.Range.Fields.Unlink'关于字体的各项设置,可以通过录制宏得到
' Range.Font 属性
' 返回或设置 Font 对象,该对象代表指定对象的字符格式With .Range.Font.NameFarEast = "宋体" '中文字体.NameAscii = "Times New Roman" '西文字体.Bold = False '字形 不加粗.Italic = False '字形 不是斜体.Size = 9 '字号.ColorIndex = wdBlack '字体颜色.Underline = wdUnderlineNone '下划线 无.UnderlineColor = wdColorBlack '下划线 颜色.EmphasisMark = wdEmphasisMarkNone '着重号.StrikeThrough = False '删除线.DoubleStrikeThrough = False '双删除线.Superscript = False '字体格式 上标.Subscript = False '字体格式 下标.SmallCaps = False '小型大写字母 字母的形状和大写字母相同但尺寸较小.AllCaps = False '全部大写字母 如果为true 字母全部大写.Hidden = False '隐藏 如果设置为true,打印的时候看不到End WithEnd With
End Sub
2)设置表格的局部的字体
Sub 设置表格的第一行的字体()'第一行的字体加粗Dim t As TableSet t = ActiveDocument.Tables(1)With t.Rows(1).Range.Font.Bold = True '字形 加粗.Size = 10.5 '字号End With
End Sub
3)设置表格边框
注:本部分样式代码原文地址:使用宏设置word中的表格样式_Sheyueyu的博客-CSDN博客
Sub SetTableBorders()'遍历所有表格For Each tbl In ActiveDocument.Tables'设置表格顶部和底部边框为1.5tbl.Borders(wdBorderTop).LineStyle = wdLineStyleSingletbl.Borders(wdBorderTop).LineWidth = wdLineWidth150pttbl.Borders(wdBorderBottom).LineStyle = wdLineStyleSingletbl.Borders(wdBorderBottom).LineWidth = wdLineWidth150pt'设置第二行的上下边框为0.75tbl.Rows(2).Borders(wdBorderTop).LineStyle = wdLineStyleSingletbl.Rows(2).Borders(wdBorderTop).LineWidth = wdLineWidth075pttbl.Rows(2).Borders(wdBorderBottom).LineStyle = wdLineStyleSingletbl.Rows(2).Borders(wdBorderBottom).LineWidth = wdLineWidth075pt'遍历表格中除了第一行和最后一行以外的其余行For i = 3 To tbl.Rows.Count - 1tbl.Rows(i).Borders(wdBorderTop).LineStyle = wdLineStyleNonetbl.Rows(i).Borders(wdBorderBottom).LineStyle = wdLineStyleNoneNext i'设置第一行下的边框为0.75tbl.Rows(1).Borders(wdBorderBottom).LineStyle = wdLineStyleSingletbl.Rows(1).Borders(wdBorderBottom).LineWidth = wdLineWidth075pt'隐藏表格的列边框For j = 1 To tbl.Columns.Counttbl.Columns(j).Borders(wdBorderLeft).LineStyle = wdLineStyleNonetbl.Columns(j).Borders(wdBorderRight).LineStyle = wdLineStyleNoneNext jNext tbl
End Sub