利用VBA导出幻灯片为图片

简介:
 PPT现在是无处不在,好处自不必多说了。PPT除了上课时演示外,有时需要将PPT的内容放到其他的一些文档中,比如Word中使用,现在的问题就来了,如果将这些幻灯片快速提取,然后放到Word中使用。
        想了很久,没找到合适的办法,最后试了下VBA,轻松搞定。
Public Sub Export_To_Image() 
Dim SaveImagePath As String         '定义文件保存路径变量 
Dim SaveImageName As String         '定义保存文件名变量 
Dim SlideObject As Slide                '定义Slide对象 
On Error GoTo Err_SaveErr             '如果保存错误转到Err_SaveErr标记处继续执行 

SaveImagePath = "D:\SlidePic\"    '定义保存文件的路径为“D:\SlidePic\” 
For Each SlideObject In ActivePresentation.Slides 
'递归每一张幻灯片对象 
        SaveImageName = SlideObject.Name & ".jpg" 
        '用幻灯片对象的名称作为保存文件的名字,“.jpg”,保存为“jpg”格式,可选bmp等其他格式 
        SlideObject.Export SaveImagePath & SaveImageName, "jpg" 
        '导出幻灯片对象到指定路径,以指定名命名 
Next SlideObject        '下一个幻灯片对象 

Err_SaveErr:                '错误处理标记 
If Err <> 0 Then        '如果发生错误执行以下代码 
        MsgBox Err.Description    '弹出错误提示信息 
End If 
End Sub
        上述代码中“ActivePresentation.Slides”表示当前幻灯片中的幻灯片集合。
        使用上面的代码最终保存的文件名会是类似于“Slide**.jpg”形式的文件名,根据制作幻灯片时情况的不同会不同,如果制作的过程中有删减的情况,则文件名会不连续,因此如果想让保存的文件名连续可以将上面的代码稍作变更即可。
Public Sub Export_To_Image() 
Dim SaveImagePath As String         '定义文件保存路径变量 
Dim SaveImageName As String         '定义保存文件名变量 
Dim SlideObject As Slide                '定义Slide对象 
Dim i As Integer                                '定义命名序列个变量 
On Error GoTo Err_SaveErr             '如果保存错误转到Err_SaveErr标记处继续执行 
i = 0                                                     '变量i初始化 

SaveImagePath = "D:\SlidePic\"    '定义保存文件的路径为“D:\SlidePic\” 
For Each SlideObject In ActivePresentation.Slides 
'递归每一张幻灯片对象 
i = i + 1     '命名序列号递增 
        SaveImageName = i & ".jpg"    '以i的数值为文件名,从而保证文件名按顺序递增 
        SlideObject.Export SaveImagePath & SaveImageName, "jpg" 
        '导出幻灯片对象到指定路径,以指定名命名 
Next SlideObject 

Err_SaveErr:                '错误处理标记 
If Err <> 0 Then        '如果发生错误执行以下代码 
        MsgBox Err.Description    '弹出错误提示信息 
End If 
End Sub
        以上代码全部在Windows XP SP3+PowerPoint 2010 Beta环境下测试通过,第二部分代码执行最后的结果如下图所示。
        在Windows XP SP3下按“文件名”排序,会自动从小到大排序,印象中以前的版本会按1、10这样的顺序,如果出现这种情况而又想保证按顺序显示,可将上面的代码再稍作变更,也就是在“i”小于等于9的情况下,在前面再加个字符串“0”,这样最终保存的结果就会是01、02……、10、11这样的形式了。




     本文转自windyli 51CTO博客,原文链接:http://blog.51cto.com/windyli/304720,如需转载请自行联系原作者





相关文章
|
存储 JSON JavaScript
【2023-08-20】最新PDF.js PDF批注注释插件库:创建、保存和管理PDF注释批注(高亮、文本框、绘图、截屏、历史记录、橡皮檫)-pdf.js
探索基于pdf.js-dist开发的纯Javascript PDF批注插件库,支持保存、导出、导入和管理PDF文件中的批注。多个功能模块为您提供丰富的PDF注释体验。
522 0
【2023-08-20】最新PDF.js PDF批注注释插件库:创建、保存和管理PDF注释批注(高亮、文本框、绘图、截屏、历史记录、橡皮檫)-pdf.js
|
2月前
|
Python
Python实现PowerPoint演示文稿到图片的批量转换
PowerPoint演示文稿作为展示创意、分享知识和表达观点的重要工具,被广泛应用于教育、商务汇报及个人项目展示等领域。然而,面对不同的分享场景与接收者需求,有时需要我们将PPT内容以图片形式保存与传播。 这样能够避免软件兼容性的限制,确保信息接收者无需安装特定软件即可查看内容,还便于在网络社交平台、博客、电子邮件中快速分享与嵌入。而用Python代码可以高效地实现PowerPoint演示文稿到图片的批量转换,从而提升工作效率。 本文将介绍如何使用Python实现PowerPoint演示文稿到图片的转换。
|
5月前
|
搜索推荐 数据安全/隐私保护 容器
Powerpoint 里母版的用法介绍
Powerpoint 里母版的用法介绍
|
5月前
|
数据安全/隐私保护 Python
使用Python脚本实现图片合成PDF功能
使用Python脚本实现图片合成PDF功能
74 0
|
5月前
在word、ppt、excel编辑软件标题栏顶部左上角加入自定义功能:另存为、导出PDF
在word、ppt、excel编辑软件标题栏顶部左上角加入自定义功能:另存为、导出PDF
|
存储 JSON 数据可视化
GLTF文件格式解析与预览、编辑
GLTF是一种免版税的规范,用于引擎和应用程序高效传输和加载3D场景和模型,最小化了3D资产的大小,以及解包和使用它们所需的运行时处理,定义了一种可扩展的发布格式,通过在整个行业中实现3D内容的互操作使用,简化了创作工作流程和交互服务。
688 0
PDF - 如何 PDF 文档在全屏模式同时显示两页
PDF - 如何 PDF 文档在全屏模式同时显示两页
840 0
PDF - 如何 PDF 文档在全屏模式同时显示两页
|
程序员 编解码 中间件
InDesign转曲字体 导出PDF的技巧
在数字出版领域, InDesign是一个独特的存在, 它的所有功能几乎都能从Photoshop中找到对应, 但又比Photoshop好用多了. 在编辑部担任美术编辑的时候, 我遇到了很意思的问题, 一些拥有漂亮曲线的字体, 是无法被I...
1251 0