发布时间:2014-08-17 10:16:58; 作者:母明 阅读次数:
计算机应用教研组 母明
关键词:案例 VBA 教学 题目还原 操作 归纳
摘要:学生在学习VBA编程时,往往会觉得枯燥无味,但是,我们在进行VBA教学时,可以结合生活中的实例,用案例来提高学生兴趣;案例实施过程中,教师要善于引导和教学设计,舍得“放手”,多给学生操作机会,切勿抹杀学生自主探索的能力;案例教学结束时善于归纳提炼关键知识点,就会更好的达到教学目的,学生才能更好的掌握知识、学习技能,更好的运用知识。
ACCESS是微软公司的中小型数据库管理系统,它除了可以进行常规的数据库管理与开发外,还集成了丰富的VBA(Visual Basic for Application)模块。学生在学习VBA编程时,往往会觉得枯燥无味,但是,如果我们在进行VBA教学时,能结合生活中的实例,比如彩票生成程序、交通红绿灯程序,电梯程序等等,教学就会显得生动有趣,学生的学习兴趣也就愈来愈浓。通过案例式的教学,让学生了解整个项目的实施过程与步骤,从中归纳提炼教学中要求学生掌握的关键知识点。
本文就结合彩票生成程序来谈谈如何引领VBA教学。
一、用案例结果提高学生兴趣
在进行类似的案例教学时,教师可以先展示程序运行结果,以便让学生产生学习兴趣,激发学生的学习潜能,产生求知欲。如教师展示如下操作界面(图1):
图1
与此同时,要求学生对该案例的结果提出运行环境要求,比如用户如何操作,操作结果用户能否修改等,也即是让学生对该案例进行题目还原(出题)。学生肯定能快速的从案例运行结果中得出题目原型:单击“试手气”按钮时,电脑会随机产生一组红色数字和一个蓝色数字,单击“退出”按钮时则会退出应用程序。此时,教师可进一步补充游戏规则,要求每个红色数字只能在1~33内,蓝色数字只能在1-16之内。
因此,建议学生在学习VBA程序设计之前,不要给学生讲太多的代码及语法,这样知识的抽象性太强,学生不易接受,而且还会使学生失去学习VBA编程的信心。相反,如果在学习之前用案例来进行教学,给学生演示案例操作结果,首先激发学生的兴趣和求知欲,才能进行更进一步的学习,这也符合循序渐进、由简到难的学习规律。
二、案例实施过程中,教师的引导和教学设计尤为重要。教师要舍得“放手”,多给学生操作机会,教师切勿抹杀学生自主探索的能力。
1、简单直观的操作一定要把机会留给学生,切勿占用学生动手操作机会。学生在了解了案例之后,肯定有一种自我实现程序的愿望,教师可放心大胆的留给学生一定的时间,让他们自己去操作设计,进行自主探索式学习,教师只在适当时予以提示。比如本例中可让学生自己设计界面,加入两个文本框对象、两个命令按钮,并要求学生自己探索设置对象的颜色、字体、大小、标题、位置等。由此引导学生并向学生设问,如何向窗体加入对象,如何修改这些对象的属性,让学生在操作和归纳总结中掌握知识点。
2、探索式的互动教学能够帮助学生理解VBA程序运行机制。在进行本案例的教学时,重点应该放在按钮的编程中,当学生自己完成界面设计后,教师可要求学生运行自己的程序,并单击两个按钮,让学生得出结论,结果不言而喻,肯定没有任何结果。此时,教师应加以引导,进行探索式的互动教学进程。解决学生心中“为什么没有结果”的疑问,从而引出VBA“事件驱动”的运行机制,并结合生活示例加以解释。相信学生明白了“事件驱动”机制后,就不难得出结论:要想单击程序中“试手气”命令按钮,自动在文本框中显示两组随机号码,则不得不对该按钮的“单击”事件进行代码编写。教师可马上演示如何对按钮的单击事件过程进行编程的操作步骤,即如何进入VBA代码编辑窗口,以及如何对按钮的单击事件过程进行编程。并留给学生一定的时间进行操作。
3、提出问题、分析问题并找到解决问题的方法是程序设计的关键。当在进行代码设计教学之前,必须让学生分析案例,不能急于求成的去编写代码。在学生完成了界面设计之后,教师可再次展示案例结果,让学生思考、分析,再次对题目进行还原。在第一个文本框中产生6个1-33以内的随机数,在第二个文本框内产生1个1-16以内的随机数,其实题目内还隐藏了三个要求,一是不能有重复数字,二是产生的随机数字要进行从小到大排序,三是要将这些数字放入文本框内。这时,不防带领学生一起分析算法和画出流程图。不难得出如下的设计思路(算法):
i<=5? i=1 j<=6? j=i+1 red(i)>red(j)? t=red(i):red(i)=red(j):red(j)=t j=j+1 i=i+1 N Y N N Y Y
Y Y N N 开始 产生一个随机数 个数<=6? 已经存在? 从小到大排序 输出到文本框 结束
4、学习VBA程序代码时,不能囫囵吞枣,了解结构尤为重要。在学生学会了分析问题,并能使用流程图,下一步的任务就是引领学生编写VBA代码。在初次接触时,教师可以演示编写,只讲代码结构和作用,切不可让学生句句掌握,行行背诵。如在本例中,可向学生给出如下代码,并在必要时加以注释说明,对核心代码进行必要的掌握。
Private Sub Command1_Click()
'声明数组,存放红色球数字
Dim red(1 To 6) As Integer
'声明红色球重复校验
Dim redIsRepeat(33) As Boolean
'清空窗体中的文本框
Me.Text1.Value = ""
Me.Text2.Value = ""
'初始化随机数发生器
Randomize
'随机产生6组不同数值(红色球号码)
For i = 1 To 6
'过滤重复数值
Do
red(i) = Int(Rnd * 33 + 1)
Loop While redIsRepeat(red(i))
redIsRepeat(red(i)) = True
Next i
'从小到大有序排列
Dim t As Integer
For i= 1 To 5
For j = i+1 To 6
If red(i) > red(j) Then t = red(i): red(i) = red(j): red(j) = t
Next j
Next i
'显示红色球号码
For i = 1 To 6
Me.Text1.Value = Me.Text1.Value & Format(red(i), "00") & Space(2)
Next i
'去除右边空格
Me.Text1.Value = Trim(Me.Text1.Value)
Dim blue As Integer
'随机产生1个数值(蓝色球号码)
blue = Int(Rnd * 16 + 1)
'显示蓝色球号码
Me.Text2.Value = Format(blue, "00")
三、案例教学结束时要善于归纳提炼关键知识点。
目前,虽然案例式、项目式的教材和教学课件资料层出不穷,教学方式方法多种多样,最终的目的是让学生学习知识,掌握技能,最重要的还是取决于学习主体和教师的引导。如果学生只是为了完成某个案例或项目,为了任务而学习的话,将是肤浅的,不能从案例学习中提炼和理解知识,更不能谈知识的灵活运用。因此,笔者认为,在进行案例或项目的实践操作学习结束时,学生完成了案例或项目要求,有一种成就感,往往会很浮躁,认为高高在上。如果要求学生马上重做一遍,大多数学生很茫然,因为在案例或项目的教学过程中,学生是在教师的引导下完成的,势必还会对教学过程甚至教师产生依赖,所以最后一个过程就要耐下心来,让学生解脱这种依赖,务必要对案例或项目中涉及的重点知识进行提炼,甚至还要进行针对性的变式训练,对案例或项目中通用性的操作步骤进行归纳总结。比如在本案例中要求学生总结对象的属性设置方法、对象的VBA编程方法、对实际问题的算法分析方法,还要归纳VBA编程的一般步骤,只有这样,才会更好的达到教学目的,学生才能更好的掌握知识、学习技能,更好的运用知识。
参考文献:
Access2003应用基础 高等教育出版社 四川省中等职业教育教学指导委员会 编
数据库原理及应用----ACCESS(第二版) 沈祥玖 尹涛 主编
上一篇: 返回列表