利用VBA对word操作自动评分提高课堂实效性研究

时间:2024-04-26 03:04:12 5A范文网 浏览: 论文范文 我要投稿

    摘 要:现代计算机技术,把人们从繁琐的劳动中解脱出来。而要教学这些内容,却又给计算机教师带来繁重的负担。比如Word、Excel、Powerpoint等Office教学内容,学生练习后的结果,如果让教师去逐个检查的话,简直是一项不可想象的事情;而不去检查,学生的错误又不能得到及时纠正。要解决这一问题,还要从自身找答案,那就是利用Office提供的VBA功能,实现Office操作题的自动测评。
    关键词:自动测评 VBA 宏 Word
   当今计算机课的教学中,Word、Excel、Powerpoint等Office教学内容占了相当大的比重,而这主要是一种技能性,或者说操作性的教学。如果在教学和练习过程中让教师逐个去检查学生的练习结果,势必给计算机教师增加过重的负担,在实际教学中几乎成为不可能。而如今能找到的一些测评软件,由于版权问题,大多是光盘版的,不能多机使用,更不能灵活地改变其题目设置,很不方便教学。“求人不如求已”,本文尝试利用Office提供的VBA功能,实现Office操作题的自动测评。
那么什么叫VBA呢?
    VBA即Visual Basic For Application,是微软开发出来的应用程序所共享的一种通用自动化语言。可以认为VBA是非常流行的应用程序开发语言Visual Basic的子集。实际上VBA是“寄生于”VB应用程序的版本。早在上世纪90年代早期,使应用程序自动化还是充满挑战性的领域,当时为了对每个需要自动化的应用程序实现自动化,人们不得不去学习多种不同的自动化语言。例如:可以用EXCEL的宏语言来使EXCEL自动化,使用WORD BASIC来使WORD自动化等等。为了解决这一矛盾,微软开发出一种通用的自动化语言——VBA,它适用于微软开发出来的所有应用程序。
    那么VBA和VB又有哪些区别呢? 
    1、VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(Word等)自动化。
    2、VB具有自己的开发环境,而VBA必须寄生于已有的应用程序。
    3、要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依赖于它的“父”应用程序,例如Word等。
    尽管存在这些不同,VBA和VB在结构上仍然十分相似。事实上,如果你已经了解了VB,会发现学习VBA非常快。相应地,学完VBA会给学习VB打下坚实的基础。而且,当学会在Word中使用VBA后,即已具备在Excel、Powerpoint等Office 中用VBA创建解决方案的大部分知识
VBA一个关键特征是你所学的知识在微软的一些产品中可以相互转化。
    总体而言,VBA可以称作Office系列应用程序的“遥控器”。
    下面我就以一节Word课的教学为例,演示其实现过程。当然,在此之前,你应该对宏、VBA、面向对象、方法、属性等概念有所了解,我想作为一名计算机教师来说,这些应该是不困难的。
    一、根据所学,设计练习题
    例如Word教学中,关于“文字格式及段落属性的设置”一节,就涉及到文字的字体、字号、字形、颜色;段落的居中、首行缩进、行距等的设置。根据教学要求,我便设计了如下“练习题.doc”文档。 
    计算机的发展趋势 
    当前计算机的发展趋势是向巨型化、微型化、网络化和智能化方向发展。
    1、巨型化(或功能巨型化)
   巨型化是指其高速运算、大存储容量和强功能的巨型计算机。其运算能力一般在每秒百亿次以上、内存容量在几百兆字节以上。巨型计算机主要用于尖端科学技术和军事国防系统的研究开发。巨型计算机的发展集中体现了计算机科学技术的发展水平,推动了计算机系统结构、硬件和软件的理论和技术、计算数学以及计算机应用等多个科学分支的发展。
    2、微型化(或体积微型化)
    二十世纪七十年代以来,由于大规模和超大规模集成电路的飞速发展,微处理器芯片连续更新换代,微型计算机连年降价,加上丰富的软件和外部设备,操作简单,使微型计算机很快普及到社会各个领域并走进了千家万户。随着微电子技术的进一步发展,微型计算机将发展得更加迅速,其中笔记本型、掌上型等微型计算机必将以更优的性能价格比受到人们的欢迎。展望未来,计算机的发展必然要经历很多新的突破。从目前的发展趋势来看,未来的计算机将是微电子技术、光学技术、超导技术和电子仿生技术相互结合的产物。 论文检测天使-免费论文检测软件http://www.jiancetianshi.com
第一台超高速全光数字计算机,已由欧盟的英国、法国、德国、意大利和比利时等国的70多名科学家和工程师合作研制成功,光子计算机的运算速度比电子计算机快1000倍。在不久的将来,超导计算机、神经网络计算机等全新的计算机也会诞生。届时计算机将发展到一个更高、更先进的水平。
    提出要求:“题目要求.txt”
    (1)将标题“计算机的发展趋势”,设为华文行楷、二号、天蓝色字。
    (2)将两个小标题,设为楷体、四号、加粗。
    (3)将两段正文,设为仿宋体、小四号、倾斜。
    (4)将标题居中。
    (5)将正文内容首行缩进2字符,行距1.5倍。
    
  论文检测天使-免费论文相似性查重http://www.jiancetianshi.com
二、 教师试做,录制并分析宏
   教师试做上面5个小题,同时相应录制五段宏:KS1、KS2、KS3、KS4、KS5。提示:在录制宏的过程中,要选择内容时,注意需要暂停宏。 
Sub ks1()
  Selection.Font.Name=“华文行楷”
  Selection.Font.Size=22
  Selection.Font.Color=wdColorSkyBlue
End Sub
Sub ks2()
  Selection.Font.Name=“楷体_GB2312”
  Selection.Font.Size=14
  Selection.Font.Bold=wdToggle
  Selection.Font.Name=“楷体_GB2312”
  Selection.Font.Size=14
  Selection.Font.Bold=wdToggle
End Sub
Sub ks3()
  Selection.Font.Name=“仿宋_GB2312”
  Selection.Font.Size=12
  Selection.Font.Italic=wdToggle
  Selection.Font.Name=“仿宋_GB2312”
  Selection.Font.Size=12
  Selection.Font.Italic=wdToggle
End Sub
Sub ks4()
  Selection.ParagraphFormat.Alignment=wdAlignParagraphCenter
End Sub
Sub ks5()
  With Selection.ParagraphFormat
    .LeftIndent=CentimetersToPoints(0)
    .RightIndent=CentimetersToPoints(0)
    .SpaceBefore=0
    .SpaceBeforeAuto=False
    .SpaceAfter=0
    .SpaceAfterAuto=False
    .LineSpacingRule=wdLineSpace1pt5
    .Alignment=wdAlignParagraphJustify
    .WidowControl=False
    .KeepWithNext=False
    .KeepTogether=False
    .PageBreakBefore=False
    .NoLineNumber=False
    .Hyphenation=True
    .FirstLineIndent=CentimetersToPoints(0.35)
    .OutlineLevel=wdOutlineLevelBodyText
    .CharacterUnitLeftIndent=0
    .CharacterUnitRightIndent=0
    .CharacterUnitFirstLineIndent=2
    .LineUnitBefore=0
    .LineUnitAfter=0
    .AutoAdjustRightIndent=True
    .DisableLineHeightGrid=False
    .FarEastLineBreakControl=True
    .WordWrap=True
    .HangingPunctuation=True
    .HalfWidthPunctuationOnTopOfLine=False
    .AddSpaceBetweenFarEastAndAlpha=True
    .AddSpaceBetweenFarEastAndDigit=True
.BaseLineAlignment=wdBaselineAlignAuto
  [8]电大学习网.免费论文网[EB/OL]. /d/file/p/2024/0424/fontbr />    End With
    End Sub
    五段宏中,“Selection对象代表一个窗格中的选定内容。该内容可以包括文档中的一个区域,也可以仅包括插入点。”
    前三段宏中,“Font对象包含了各种字体属性。”“Name代表文字字体名称。”“Size代表文字大小。”“Color代表文字颜色。”“Bold代表文字是否加粗。”“Italic代表文字是否倾斜。”“wdToggle等同于True。”
   第四段宏中,“ParagraphFormat代表了指定区域、所选范围、查找与替换操作或样式中的段落设置。”“Alignment返回或设置指定段落的对齐方式。”   “wdAlignParagraphCe
nter代表居中对齐。”
    第五段宏,内容很多,但只有几个参数有用,“Character
UnitFirstLineIndent返回或设置首行或悬挂缩进的值(以字符为单位)。用正值设置首行缩进,用负值设定悬挂缩进。Single 类型可读写。”“LineSpacingRule返回或设置指定段落的行距,wdLineSpace1pt5代表1.5倍行距。”
    这里,如果对代码不理解的话,可以查阅帮助,注意不是Word窗口中的帮助,而是Visual Basic 编辑器窗口中的帮助,或者直接在VBAWRD9.CHM帮助文件中查找。(其默认安装目录为C:/Program Files/Microsoft Office/Office/2052)
    三、按图索骥,编制测评代码
    这一步,难度较大,我们可以参考相关的VB和VBA书籍。另外在Office 2000的安装目录下可以找到诸如VBAWRD9.CHM、VBAXL9.CHM、VBAPPT9.CHM、VBAOFF9.CHM等帮助文件作为学习和参考之用。
    下面是我编写的关于“练习题.doc”文档的测评代码。
    Sub 测评()
    Dim defen As Integer 设置测评结果变量defen
    defen=0’测评结果变量defen初始化为0
    ⑴ 将标题“计算机的发展趋势”,设为华文行楷、二号、天蓝色字。(2分)
    If ActiveDocument.Paragraphs.Count >= 1 Then
    ActiveDocument.Paragraphs(1).Range.Select
    If Selection.Font.Name=“华文行楷”And Selection.Font.Size=22 And Selection.Font.Color=wdColorSkyBlue Then
    defen=defen+2如果正确则加2分
    End If
    End If   
    ⑵ 将两个小标题,设为楷体、四号、加粗。(2分)
    If ActiveDocument.Paragraphs.Count >= 4 Then
    ActiveDocument.Paragraphs(2).Range.Select
    If Selection.Font.Name=“楷体_GB2312”And Selection.Font.Size=14 And Selection.Font.Bold Then
    ActiveDocument.Paragraphs(4).Range.Select
    If Selection.Font.Name=“楷体_GB2312”And Selection.Font.Size=14 And Selection.Font.Bold Then
    defen=defen+2如果正确则加2分
    End If
    End If
    End If
    ⑶ 将两段正文,设为仿宋体、小四号、倾斜。(2分)
    If ActiveDocument.Paragraphs.Count >= 5 Then
    ActiveDocument.Paragraphs(3).Range.Select
    If Selection.Font.Name="仿宋_GB2312" And Selection.Font.Size=12 And Selection.Font.Italic=True Then
    ActiveDocument.Paragraphs(5).Range.Select
    If Selection.Font.Name=“仿宋_GB2312”And Selection.Font.Size=12 And Selection.Font.Italic=True Then
    defen=defen+2’如果正确则加2分
    End If
    End If
    End If
    ⑷ 将标题居中。(2分)
    If ActiveDocument.Paragraphs.Count >= 1 Then
    ActiveDocument.Paragraphs(1).Range.Select
    If Selection.ParagraphFormat.Alignment=1 Then
    defen=defen+2  ’如果正确则加2分
    End If
    End If
    ⑸ 将正文内容首行缩进2字符,行距1.5倍。(2分)
    If ActiveDocument.Paragraphs.Count >= 5 Then
    ActiveDocument.Range(ActiveDocument.Paragraphs(2).Range.Start, ActiveDocument.Paragraphs(5).Range.End).Select
    If Selection.ParagraphFormat.CharacterUnitFirstLineIndent=2 And Selection.ParagraphFormat.LineSpacingRule=wdLineSpace1pt5 Then
    defen=defen+2如果正确则加2分
    End If
    End If
    输出测评结果变量defen
    MsgBox defen,“最终得分”
    End Sub
    四、设置共享,实现自动测评
    这一步可以把“题目要求.doc”和“练习题.txt”两个文件放置在教师机的一个文件夹内,并把这个文件夹设为只读共享,学生便可以通过网络来访问教师机进行练习了。
本文仅以Word为例加以说明,实际上本方法适用于大多数Office文档的自动测评,如Excel、Powerpoint等。
参考文献
1、逸海书城.http://www.easysea.com/diannao/books/software/office/Excel/index01/112.htm
2、ExcelHelp Forum./d/file/p/2024/0424/loginout.cgi
3、OFFICE精英俱乐部./d/file/p/2024/0424/survey-smiles.com />  [8]电大学习网.免费论文网[EB/OL]. /d/file/p/2024/0424/fontbr /> 

相关文章:

试析高校计算机辅助教学应用的反思和探索04-26

“白板”起家 前景无限04-26

浅议中专学校计算机教学方法04-26

浅谈计算机组装与维护课程改革新探索04-26

提高技校计算机教学效果方法浅探04-26

浅析组件机制和操作系统的实现04-26

浅谈商务写字楼电力线宽带上网方案04-26

当前Flash动画设计文04-26

透视智能代理和协作学习04-26

应用Word小技巧 促进学科整合04-26

热搜文章
最新文章