注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

阿龙山寨

一花一世界,一生一宿命!

 
 
 
 
 

日志

 
 
关于我

放弃该放弃的是无奈,放弃不该放弃的是无能,不放弃该放弃的是无知,不放弃不该放弃的却是执著!

网易考拉推荐

PPT与Excel交互之VBA法  

2012-03-11 18:42:18|  分类: PPT专题 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

PPT与Excel交互之VBA法 - 阿龙 - 阿龙山寨

 大约半个月以前,我们讲过《PPT与Excel交互之选择性粘贴法》,当时用的是选择粘贴法实现两者之间的数据共享。但同时我们也提到PowerPoint和Office其他格式文件交换数据最好的方法是通过VBA,只有想不到,没有做不到。因为这句话,很多朋友来信询问用VBA如何实现PPT与Excel连接。为了解答大家心中的疑问,今天我们就来讲讲用VBA的方法来实现PPT与Excel的连接。

 想用Excel做一个习题库,每次简单的修改一下自动生成习题?其实,VBA可以解决这一切。下面,我讲从原理入手,不断完善这个PPT和Excel链接的题库。

 原理:利用VBA后台打开Excel题库,读取对应的数据,显示到PPT中。?

 步骤:

 第一、后台打开Excel题库
        ①为了让PPT中适用Excel的VBA对象属性函数,我们需要事先引用excel的对象模型。
        打开PowerPoint2010→开发工具→Visual Basic→工具→引用→勾选“Microsoft Excel 14.0 Object Library”→确定。这时候,我们就能在PPT程序中适用Excel中的VBA对象属性函数了。

 ②代码部分。
        在公共部分先声明:(这样子就产生了一个整个程序运行时都可以调用的变量了)
        Dim xlApp As Excel.Application
        在sub部分开始写:
        Sub start()
        Set xlApp = New Excel.Application  '新建一个Excel程序
        xlFilePath$ = ActivePresentation.Path & "\" & "xt.xls"  '定义当前题库的位置
        xlApp.Workbooks.Open xlFilePath, , False  '后台打开Excel
        End Sub

 第二、读取Excel的数据
        ①这个部分需要对Excel的基本对象有所了解。
        Excel:Application→Workbook→Sheets→Cells
        备注:具体的信息可以看帮助系统的对象模型。

 ②代码部分。
        比如,我们刚刚后台打开的xlApp的第一个工作簿第一个工作表第二行第三列的数据就可以表示为
        xlApp.Workbooks(1).Sheets(1).Cells(2, 3)

 第三、传达给PowerPoint
        ①这个部分需要对PowerPoint 的基本对象有所了解。
        PowerPoint:Application→Presentation→Slides→Shapes
        备注:具体的信息可以看帮助系统的对象模型。

 ②代码部分。
        比如,我们需要将刚刚读取出来的数据显示在当前演示文稿的第一张幻灯片第2个形状(以文本形式)
        ActivePresentation.Slides(1).Shapes(2).TextFrame.TextRange.Text = _ 
        xlApp.Workbooks(1).Sheets(1).Cells(2, 3)
      ‘此处的“_”是连接一行代码的意思,就是说,代码太长的时候可以这样子分几行写。

 第四、退出PPT放映是关闭Excel
        ①此处的操作目的是为了避免后台出现很多Excel的进程。

 ②代码部分。
        xlApp.Workbooks.Close  ‘关闭打开的Excel
        Set xlApp = Nothing  ‘清空xlApp
        备注:最好把这部分的代码在OnSlideShowTerminate,这个在PowerPoint结束放映是自动运行的Sub也写一遍。

 第五、我们需要更多
        其实,理解了上述思路,我们就可以完成了大致的连接过程。

 打开Excel→读取单元格数据→显示在PPT上面→关闭Excel 

 但是,利用VBA我们可以完成更多,如随机出题,判断正误,自动计分……让我们再散发一些思路,比如密码登录题库。只有想不到,没有做不到,你愿意尝试下吗?

 上面操作步骤的讲解只是PPT整个效果的一部分功能性代码,大家可以下载下面这个随机出题案例《有问必答》,打开PPT后按Alt+F11查看完整代码。PPT案例中的加载密码是:zxc,其实不填写直接加载也可以。该作品效果仅限于讲PPT与Excel连接,没有做选择题、判断正误、自动计分等效果。
        下载地址:

PPT与Excel交互之VBA法 - 阿龙 - 阿龙山寨

  评论这张
 
阅读(845)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018