孟丽娟,吴 锋,崔 磊
(宿迁学院基础部,江苏宿迁 223800)
PowerPoint中基于VBA的两个应用的改进*
孟丽娟,吴 锋,崔 磊
(宿迁学院基础部,江苏宿迁 223800)
使用PowerPoint内嵌的自动化语言Visual Basic for Applications(VBA)改进了实时显示时间,结合算法改进了随机点名。两者都有一定的实用价值。
VBA;PowerPoint;实时显示时间;随机点名
本文基于内嵌在PowerPoint(PPT)2003中的自动化语言 Visual Basic for Applications(VBA)改进了两个已有的应用。[1]
在PPT课件中显示时间的方法包括利用时钟软件和基于应用程序编程接口(API)的VBA程序。因为这些方法显得不够直接或较复杂,触发笔者改进了实现该目标的方案。
首先,为了使所用幻灯片能够显示出时间,在新建演示文稿的幻灯片母版中添加矩形,并用它显示时间,如图1所示。这一步通过VBA实现,将矩形取名为“clock”。 其次,在母板中右击该
矩形,将它关联已经编好的宏 (延时功能使用Timer和DoEvents实现),其主要代码为:
在放映幻灯片期间,运行上述宏,则矩形中将实时、动态地显示出计算机中当时的时间。
实践表明,PPT中已有随机函数产生的随机数分布并不均匀,所以用于点名时会带来一些问题。例如,两次连续点名产生的是同一个姓名,为此,参照徐士良在文献中的方法,用VBA生成固定区间均匀分布的随机整数,表示学生的序号。[2]另外,因为同一个种子对应同一个确定的序列,为了在同一门课的教学中所有学生都尽可能被叫到,故而将种子设定为授课当天的日期。新建模块,主要代码为:
'在幻灯片右上角新建一矩形,通过奇数种子生成随机数、选择姓名输出到矩形
图2显示了种子为4时连续点名的结果,箭头表示名字出现的顺序自左向右。可见,连续点名时,姓名没有发生重复。
本文结合VBA简化了实时显示时间的过程,结合VBA和算法改进了随机点名,两者皆有一定的实际应用价值。
[1]吴锋.在PowerPoint中利用VBA制作导航菜单[J].中国教育信息化,2009,(8):66-68.
[2]徐士良.C常用算法程序集(第2版)[M].北京:清华大学出版社,2001.
(编辑:王天鹏)
G433
A
1673-8454(2011)06-0067-02