来源:http://support.microsoft.com/kb/222929

通过使用 PowerPoint 中的自动运行功能,您可以以编程方式打印、显示幻灯片及执行以交互式执行的大多数事情。按照以下步骤构建并运行一个 Visual Basic 自动运行示例:

  1. 创建一个新的标准 EXE 项目。Form1 是默认创建的窗体。
  2. 向默认的窗体添加一个 CommandButton。
  3. 项目菜单上,单击引用,添加 Microsoft PowerPoint 8.0 对象库Microsoft Office 8.0 对象库。对于 Office 2000,类型库的版本是 9.0。对于 Office 2002,类型库的版本是 10.0。对于 Microsoft Office 2003,类型库的版本是 11.0。
  4. 将以下代码添加到您的窗体代码窗口中:
    Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    
    Private Sub Command1_Click()
    ' Start PowerPoint.
    Dim ppApp As PowerPoint.Application
    Set ppApp = CreateObject("Powerpoint.Application") ' Make it visible.
    ppApp.Visible = True ' Add a new presentation.
    Dim ppPres As PowerPoint.Presentation
    Set ppPres = ppApp.Presentations.Add(msoTrue) ' Add a new slide.
    Dim ppSlide1 As PowerPoint.Slide
    Set ppSlide1 = ppPres.Slides.Add(1, ppLayoutText) ' Add some text.
    ppSlide1.Shapes(1).TextFrame.TextRange.Text = "My first slide"
    ppSlide1.Shapes(2).TextFrame.TextRange.Text = "Automating Powerpoint is easy" & vbCr & "Using Visual Basic is fun!" ' Add another slide, with a chart.
    Dim ppSlide2 As PowerPoint.Slide
    Set ppSlide2 = ppPres.Slides.Add(2, ppLayoutTextAndChart) ' Add some text.
    ppSlide2.Shapes(1).TextFrame.TextRange.Text = "Slide 2's topic"
    ppSlide2.Shapes(2).TextFrame.TextRange.Text = "You can create and use charts in your Powerpoint slides!" ' Add a chart in the same location as the old one.
    Dim cTop As Double
    Dim cWidth As Double
    Dim cHeight As Double
    Dim cLeft As Double
    With ppSlide2.Shapes(3)
    cTop = .Top
    cWidth = .Width
    cHeight = .Height
    cLeft = .Left
    .Delete
    End With
    ppSlide2.Shapes.AddOLEObject cLeft, cTop, cWidth, cHeight, "MSGraph.Chart" ' Add another slide, with an organization chart.
    Dim ppSlide3 As PowerPoint.Slide
    Set ppSlide3 = ppPres.Slides.Add(3, ppLayoutOrgchart) ' Add some text. ppSlide3.Shapes(1).TextFrame.TextRange.Text = "The rest is only limited by your Imagination" ' Add an Org Chart in the same location as the old one.
    With ppSlide3.Shapes(2)
    cTop = .Top
    cWidth = .Width
    cHeight = .Height
    cLeft = .Left
    .Delete
    End With
    ppSlide3.Shapes.AddOLEObject cLeft, cTop, cWidth, cHeight, "OrgPlusWOPX.4" 'OrgPlusWOPX.4
    ' is an object of the application Microsoft Organization Chart ' Setup slide show properties.
    With ppPres.Slides.Range.SlideShowTransition
    .EntryEffect = ppEffectRandom
    .AdvanceOnTime = msoTrue
    .AdvanceTime = 5 ' 5 seconds per slide
    End With ' Prepare and run the slide show.
    With ppPres.SlideShowSettings
    .ShowType = ppShowTypeKiosk
    .LoopUntilStopped = msoTrue .RangeType = ppShowAll
    .AdvanceMode = ppSlideShowUseSlideTimings
    .Run
    End With ' Sleep so user can watch the show.
    Sleep (15000) ' Clean up.
    ppApp.Quit End Sub
  5. 运行该项目。

vb 运行ppt示例代码的更多相关文章

  1. 《ArcGIS Runtime SDK for Android开发笔记》——(7)、示例代码arcgis-runtime-samples-android的使用

    1.前言 学习ArcGIS Runtime SDK开发,其实最推荐的学习方式是直接看官方的教程.示例代码和帮助文档,因为官方的示例一般来说都是目前技术最新,也是最详尽的.对于ArcGIS Runtim ...

  2. 用Java为Hyperledger Fabric(超级账本)开发区块链智能合约链代码之部署与运行示例代码

    部署并运行 Java 链代码示例 您已经定义并启动了本地区块链网络,而且已构建 Java shim 客户端 JAR 并安装到本地 Maven 存储库中,现在已准备好在之前下载的 Hyperledger ...

  3. SkylineGlobe 支持火狐和谷歌浏览器的可运行示例代码

    示例代码: <html> <head> <title>3dml的Feature对象选中和隐藏</title> <script type=" ...

  4. [转] VS2015中跑OpenGL红宝书第八版的第一章示例代码,运行

    Ori Article Link OpenGL的东西快忘光了,把角落的第八版红宝书拿出来复习一下 从书中的地址下了个示例代码结果新系统(Win10+VS2015)各种跑不起来,懊恼之后在网上疯狂搜索资 ...

  5. python开源项目及示例代码

    本页面是俺收集的各种 Python 资源,不定期更新. 下面列出的各种 Python 库/模块/工具,如果名称带超链接,说明是第三方的:否则是 Python 语言内置的. 1 算法 1.1 字符串处理 ...

  6. python开源项目及示例代码(转)

    本页面是俺收集的各种 Python 资源,不定期更新. 下面列出的各种 Python 库/模块/工具,如果名称带超链接,说明是第三方的:否则是 Python 语言内置的. 1 算法 1.1 字符串处理 ...

  7. 编译opengl编程指南第八版示例代码通过

    最近在编译opengl编程指南第八版的示例代码,如下 #include <iostream> #include "vgl.h" #include "LoadS ...

  8. 【原】iOS动态性(三) Method Swizzling以及AOP编程:在运行时进行代码注入

    概述 今天我们主要讨论iOS runtime中的一种黑色技术,称为Method Swizzling.字面上理解Method Swizzling可能比较晦涩难懂,毕竟不是中文,不过你可以理解为“移花接木 ...

  9. 【译】用Fragment创建动态的界面布局(附Android示例代码)

    原文链接:Building a Dynamic UI with Fragments 为了在Android上创建一个动态和多视图的用户界面,你需要封装UI控件和模块化Activity的行为,以便于你能够 ...

随机推荐

  1. 【废弃】【WIP】JavaScript Object

    创建: 2017/11/03 废弃: 2019/02/19 重构此篇.原文归入废弃  增加[废弃中]标签与总体任务 结束: 2019/03/03 完成废弃, 删除[废弃中]标签, 添加[废弃]标签 T ...

  2. 《Maven实战》(许晓斌)导读(读书笔记&第二次读后感)

    第一章 Maven简介 Maven是构建工具,但同时还是jar包管理工具.项目信息管理工具 与Make.Ant比较,更为先进 第二章 Maven的安装和配置 Windows和Unix上安装都很简单,下 ...

  3. 【洛谷4721】【模板】分治FFT(CDQ分治_NTT)

    题目: 洛谷 4721 分析: 我觉得这个 "分治 FFT " 不能算一种特殊的 FFT ,只是 CDQ 分治里套了个用 FFT (或 NTT)计算的过程,二者是并列关系而不是偏正 ...

  4. 树形DP Codeforces Round #135 (Div. 2) D. Choosing Capital for Treeland

    题目传送门 /* 题意:求一个点为根节点,使得到其他所有点的距离最短,是有向边,反向的距离+1 树形DP:首先假设1为根节点,自下而上计算dp[1](根节点到其他点的距离),然后再从1开始,自上而下计 ...

  5. 二分图最大匹配(匈牙利算法) UVA 670 The dog task

    题目传送门 /* 题意:bob按照指定顺序行走,他的狗可以在他到达下一个点之前到一个景点并及时返回,问狗最多能走多少个景点 匈牙利算法:按照狗能否顺利到一个景点分为两个集合,套个模板 */ #incl ...

  6. Android 性能优化(25)*性能工具之「Systrace」Analyzing UI Performance with Systrace:用Systrace得到ui性能报告

    Analyzing UI Performance with Systrace In this document Overview 简介 Generating a Trace  生成Systrace文件 ...

  7. List 的属性与方法整理

    List<T> 类与 ArrayList 类比较类似.它实现了 IList<T> 泛型接口,长度可以动态增加. 可以使用 Add 或 AddRange 方法将项添加到 List ...

  8. 全面学习ORACLE Scheduler特性(7)Scheduler抛出的Events

    四.使用Events Event直译对应的中文解释是指事件,不过单纯讲事件毕竟太抽象了,举个示例来形容吧.A(对应某个应用程序,或者是ORACLE中的进程)在干活时突然眉头一皱说道,不好,前方有情况, ...

  9. CSS知识点整理(1):CSS语法,层叠次序,选择器,其他重要方面。

    1. css的全称 2. CSS的层叠次序:优先级由低到高 ·浏览器设置 ·外部样式表 或者 内部样式表 —— 就近原则 ·内联样式 3. CSS的3种形式,以及每种形式的语法格式 ——注意样式表的为 ...

  10. Position属性四个值:static、fixed、absolute和relative的区别

    1.static(静态定位):默认值.没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明). 2.relative(相对定位):生成相对 ...