首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何对PPT中的表格格式进行一键处理

我们在制作PPT时,对PPT的观感要求较高的PPTer,常需要对PPT中的表格进行统一的格式调整,以统一页面风格。使用Microsoft Office比较常见、原始的做法是逐个表格选中,分别对每个表格进行格式设置。如果PPT中表格少还行,但如果表格量大,特别是用于呈现数据的PPT,这样操作就显得比较费时费力了。是否有办法对所有表格进行快速甚至一键调整呢?答案肯定是有的,目前网上也能找到很多好用的PPT插件可以很方便的实现这样的功能,对该类插件有兴趣可以去网上搜一搜。但这里主要为大家介绍的是使用Microsoft Office自带的VBA功能去实现对当前PPT文档内所有表格进行一键调整格式。

首先需要确定表格内容的目标格式,用于举例,这里我们目标是将当前打开的PPT文档内所有的表格格式调整为: 行高0.6厘米, 列宽2厘米, 字体为“微软雅黑”, 字号为“9号”。

代码编写

以下是为实现这一目标功能的VBA代码。

Sub AllTablesFormat()

Dim i, j, a, b As Integer

Dim r As Row, c As Column, cl As Cell

For i = 1 To ActivePresentation.Slides.Count '遍历当前处于激活状态的PPT文档的每一页

With ActivePresentation.Slides(i)

For j = 1 To .Shapes.Count '遍历PPT中的所有图形

If .Shapes(j).HasTable Then '如图形为表格

For Each r In .Shapes(j).Table.Rows '遍历每一行

r.Height = 17.01 '设置行高为0.6厘米,需换算为“磅”为单位,0.6厘米约等于17.01磅 Next r

For Each c In .Shapes(j).Table.Columns '遍历每一列

c.Width = 56.7 '设置列宽为2厘米,需换算为“磅”为单位,2厘米约等于56.7磅

Next c

For a = 1 To .Shapes(j).Table.Rows.Count

For b = 1 To .Shapes(j).Table.Columns.Count '遍历每一个单元格

With .Shapes(j).Table.Cell(a, b).Shape.TextFrame.TextRange.Font '设置字体

.Name = "微软雅黑" '英文字体

.NameFarEast = "微软雅黑" '中文字体

.Size = 9 '字号

End With

Next

Next

End If

Next

End With

Next

MsgBox "表格格式设置完毕!" '运行完毕后弹出提示

End Sub

编辑代码到文档内并保存

需要使用到“开发工具”,如果PPT界面没有显示“开发工具”,先按照下面步骤设置让其显示。 单击“文件”,进入PPT“开始”界面,于页面左下角单击“选项”,弹出“PowerPoint 选项卡”。在“自定义功能区”下,把“开发工具”前面的复选框勾上。回到PPT编辑页面,页面上方“开发工具”选项卡就出现了。

打开需要操作的PPT文档,在“开发工具”选项卡下,单击“宏”图标。

在“宏名”处输入宏的名称,如我们的实例为AllTablesFormat。需要注意的是,此处的名称需要和代码第一行Sub后面的名称一致。宏命名后,单击“创建”。弹出代码编辑界面。

在代码编辑界面,将右侧从Sub到End Sub完整替换为以上代码。

替换后如下图所示,然后单击“保存”图标,对文档进行保存。

因为当前PPT文档为未启用宏的常规文档,所有再弹出以下提示时,选择“否”。

弹出“另存为”对话框。

将保存类型选为“启用宏的PowerPoint演示文稿”,然后对文件命名后单击“保存”。

调用已编辑完成的宏对PPT文档进行操作

在“开发工具”选项卡下单击“宏”图标。

选择要使用的宏,单击“运行”。

此时,我们编好的宏代码就开始运行,根据PPT中表格数量的多少,运行时长有一定差异,需要耐心等待。根据代码的设置,运行完毕后,会弹出提示“表格格式设置完毕!”

理解了以上这个例子,就可以适当改写代码,实现更多样的格式设置。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OXPNc2dLyU0u3qxNA3KN7aKw0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券