| 论文导读:针对这点,可以利用Powerpoint内置的VBA语言和数据库技术相结合,直接把后台数据库文件中的数据导入到PPT课件中,那么就只需要一张幻灯片就可以达到多张幻灯片的效果,大大简化了制作过程,极大提高工作效率,并且扩展性很强。关键词:ADO数据库,VBA
 
 1、引言 目前交互性课件在教学中的应用越来越广泛,为教学工作带来了很大的便利。但是要完成由大量交互性幻灯片组成的课件时,如果还是采用逐一完成每一张幻灯片,或者是一个个控件的添加再编程去实现的话,光是内容的录入这一项,工作量就不小,加上还有大量的动画、格式等设置工作,整个制作过程比较繁琐,需要很多的时间。针对这点,可以利用Powerpoint内置的VBA语言和数据库技术相结合,直接把后台数据库文件中的数据导入到PPT课件中,那么就只需要一张幻灯片就可以达到多张幻灯片的效果,大大简化了制作过程,极大提高工作效率,并且扩展性很强。 2、使用VBA和数据库技术制作交互性课件 这里所使用的VBA是新一代标准宏语言,是VB的子集,是一种面向对象,事件驱动的可视化语言,它是Office套装软件的一个十分重要的组件。本文是通过Microsoft的OLEDB技术中的ADO对象来实现数据库连接的。运行Powerpoint 2003后,首先单击“工具/宏/VisualBasic编辑器”进入VBA编辑器,在VBA编辑器中选择“工具/引用”命令,在引用列表中勾选“Microsoft ActiveXData Objects 2.6 Library”(不同环境下ADO的版本号可能不同),这里要用到ADO数据模型中的常用对象Connection,它代表与数据源的连接,在访问数据库时,首先需要创建一个Connection对象,通过它建立到数据库的连接。创建的方法如下:dim cnnas new adodb.connection。科技论文。科技论文。另一个是Recordset对象,它表示来自基本表或命令执行结果的记录全集。使用ADO时,通过Recordset对象可对几乎所有数据进行操作。 下面以制作单选题为例,介绍一下实现的过程。先把数据库文件创建好,这里的数据库文件选择的是微软的ACCESS数据库文件,数据库文件中有一个test表,其实就是一个题库表,如表1,表中的数据就是要出现在课件中的一个个题目。  接着制作幻灯片界面,如图1,打开“控件工具箱”工具栏,把需要的控件一一添加到幻灯片中,在属性对话框中进行属性值的设置。1个标签用来显示题目内容、4个单选按钮显示题目中的各个选项、4个命令按钮,各命令按钮的功能是:“开始”显示第一题,“上一题”和“下一题”就是前进和后退的功能,“查看”是显示正确答案。这里只要针对各个控件编程就可以了。在VBA编辑器中输入以下代码:
 首先在通用声明中定义全局变量,可为整个程序的各事件、模块使用: Dim cnn As New ADODB.Connection Dim rs1 As New ADODB.Recordset Dim varsource As String  Private Sub CommandButton1_Click() ' 开始按钮
 varsource = 'select *from test' cnn.ConnectionString = 'Provider=Microsoft.jet.oledb.4.0;'_ + 'data source =g: testacle.mdb' cnn.Open Set rs1.ActiveConnection = cnn rs1.CursorType = adOpenStatic rs1.Open varsource Label1.Visible = True Option1.Visible = True …… Option4.Visible = True rs1.MoveFirst If rs1.BOF <> True Then Label1.Caption = CStr(rs1.Fields('编号')) & '.'& rs1.Fields('题目') Option1.Caption = 'A、' & rs1.Fields('选项A') Option2.Caption = 'B、' & rs1.Fields('选项B') Option3.Caption = 'C、' & rs1.Fields('选项C') Option4.Caption = 'D、' & rs1.Fields('选项D') …… Private Sub CommandButton2_Click() ‘下一题命扭按钮 rs1.MoveNext If rs1.EOF <> True Then Label1.Caption = CStr(rs1.Fields('编号')) & '.'& rs1.Fields('题目') Option1.Caption = 'A、' & rs1.Fields('选项A') …… CommandButton3.Enabled = True 上一题命扭按钮的单击事件过程和“下一题”类似,区别是往前访问数据记录 Private Sub CommandButton4_Click() '查看按钮 If rs1.BOF Or rs1.EOF <> True Then MsgBox '正确答案是' & CStr(rs1.Fields('答案')) & '你答对了吗!' End If End Sub Sub onslideshowterminate() ‘当幻灯片播放完毕或中断时,关闭记录集,关闭数据库文件 rs1.Close cnn.Close End Sub 这样通过连接数据库的方式,直接把一个题库数据库文件内容导入到课件中,整个PPT只需要一张幻灯片就可以显示所有的题目。运行时,单击“开始”显示第一题,单击“下一题”和“上一题”可以显示后续的或之前的每一题,单击“查看”看答案。科技论文。本文的代码实现的功能都在Windows XP环境下Powerpoint2003中测试通过。 3、结束语 交互性课件对教学工作有着很大的帮助,本文介绍了在Powerpoint中应用VBA和数据库技术创建具有交互性的课件的方法,实现方法简单,使我们制作交互性课件的过程简化了许多,容易了许多。当然我们还可以利用VBA编程语言来制作出更富有趣味性的课件,这就需要深入学习VBA编程技术。 参考文献
 [1]王余勤.VB A技术在Powerpoint中的应用研究.[J]中国医学教育技术.2005
 [2]王川,阮兴平等.中文版Office2000VBA一册通[M].北京.人民邮电出版社.2000
 [3]韩泽坤.Access 2003公司数据库管理综合应用[ M]北京.中国青年出版社.2005
 
   |