华人彩票注册登陆网站
热点资讯
新闻动态 你的位置:华人彩票注册登陆网站 > 新闻动态 > 谈谈使用VBA控制PPT
谈谈使用VBA控制PPT发布日期:2025-04-13 08:38 点击次数:53
excelperfect标签:VBA与Excel一样,我们也可以使用VBA来操控PPT。如下面的代码:Sub AddShapeToPPT() Dim myShape As Shape Set myShape = ActiveWindow.View.Slide.Shapes.AddShape(msoShapeRectangle, 50, 50, 50, 50) With myShape.Fill .Visible = msoTrue .ForeColor.RGB = RGB(255, 0, 0) .Transparency = 0 .Solid End WithEnd Sub在PowerPoint中运行后,将会在当前幻灯片中生成一个红色的矩形(正方形)。然而,与Excel不同的是,在PowerPoint中没有宏录制器,因而不能将操作录制成代码。但我们可以借助于Excel的宏录制器,在Excel中录制相关操作的代码,然后稍作修改,将其移植到PowerPoint中。例如,在Excel中使用宏录制器录制的绘制红色矩形的代码如下:
ActiveSheet.Shapes.AddShape(msoShapeRectangle, 50, 50, 50, 50).Select With Selection.ShapeRange.Fill .Visible = msoTrue .ForeColor.RGB = RGB(255, 0, 0) .Transparency = 0 .Solid End With与在PowerPoint中创建红色矩形的代码相对,几乎相同。只是,在Excel中使用ActiveSheet代表引用了当前工作表,而在PowerPoint中使用ActiveWindow.View.Slide代表引用当前幻灯片。这为我们提供了一种方法,也就是在Excel中录制相关的操作代码,稍作修改后应用到PowerPoint中。其实,我们可以直接在Excel的VBE中修改代码,用来生成PPT。与上文在PPT中绘制红色矩形一样,下面的示例代码从Excel中打开PPT并在当前幻灯片中绘制一个红 色矩形:Sub AddShapeToPPT() Dim pptApp As PowerPoint.Application Set pptApp = New PowerPoint.Application Dim pptPres As Object Set pptPres = pptApp.Presentations.Add(msoTrue) Dim pptSlide As Object Set pptSlide = pptPres.Slides.Add(1, ppLayoutTitleOnly) Dim myShape As Object Set myShape = pptApp.ActiveWindow.View.Slide.Shapes. _ AddShape(msoShapeRectangle, 50, 50, 50, 50) With myShape.Fill .Visible = msoTrue .ForeColor.RGB = RGB(255, 0, 0) .Transparency = 0 .Solid End WithEnd Sub可以看出,代码段除了声明部分要引用幻灯片用来处理外,下面的大部分代码都相同。注意,在运行上面的代码前,要先引用相应的对象库,即在VBE中,单击菜单“工具——引用”,在“引用”对话框中,找到“Microsoft PowerPoint 16.0 Object Library”并选取其前面的复选框,如下图1所示。
图片
图1欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料,并通过社群加入专门的微信讨论群,更方便交流。 本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。上一篇:魏丽丽:群众健康挂心上
