39 VBA对word操作自动评分提高课堂实效性论文网_职称驿站
论文发表指导_期刊投稿推荐_期刊论文发表咨询_职称驿站

论文发表指导,期刊推荐,国际出版

职称驿站学术导航
关闭职称驿站导航

论文发表职称晋升 全方位咨询服务

学术出版,国际教著,国际期刊,SCI,SSCI,EI,SCOPUS,A&HCI等高端学术咨询

VBA对word操作自动评分提高课堂实效性论文网

来源:职称驿站所属分类:计算机应用论文
发布时间:2013-07-15浏览:18次

   摘 要:现代计算机技术,把人们从繁琐的劳动中解脱出来。而要教学这些内容,却又给计算机教师带来繁重的负担。比如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、微型化(或体积微型化)
 
  二十世纪七十年代以来,由于大规模和超大规模集成电路的飞速发展,微处理器芯片连续更新换代,微型计算机连年降价,加上丰富的软件和外部设备,操作简单,使微型计算机很快普及到社会各个领域并走进了千家万户。随着微电子技术的进一步发展,微型计算机将发展得更加迅速,其中笔记本型、掌上型等微型计算机必将以更优的性能价格比受到人们的欢迎。展望未来,计算机的发展必然要经历很多新的突破。从目前的发展趋势来看,未来的计算机将是微电子技术、光学技术、超导技术和电子仿生技术相互结合的产物。第一台超高速全光数字计算机,已由欧盟的英国、法国、德国、意大利和比利时等国的70多名科学家和工程师合作研制成功,光子计算机的运算速度比电子计算机快1000倍。在不久的将来,超导计算机、神经网络计算机等全新的计算机也会诞生。届时计算机将发展到一个更高、更先进的水平。
 
  提出要求:“题目要求.txt”
 
  (1)将标题“计算机的发展趋势”,设为华文行楷、二号、天蓝色字。
 
  (2)将两个小标题,设为楷体、四号、加粗。
 
  (3)将两段正文,设为仿宋体、小四号、倾斜。
 
  (4)将标题居中。
 
  (5)将正文内容首行缩进2字符,行距1.5倍。
 
  二、 教师试做,录制并分析宏
 
  教师试做上面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
 
  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 FilesMicrosoft OfficeOffice2052)
 
  三、按图索骥,编制测评代码
 
  这一步,难度较大,我们可以参考相关的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、逸海书城.
 
  2、ExcelHelp Forum.
 
  3、OFFICE精英俱乐部.

《VBA对word操作自动评分提高课堂实效性论文网》

本文由职称驿站首发,您身边的高端学术顾问

文章名称: VBA对word操作自动评分提高课堂实效性论文网

文章地址: https://m.zhichengyz.com/p-23512

相关内容推荐
肠道免疫相关的SCI期刊推荐9本
高级工程师职称评定要发论文还是出版著作
41本民族学与文学方向AMI收录期刊
土木工程2区sci期刊推荐9本
A类核心学术论文难发吗
教师职称专著对第一作者单位有要求吗
博士出书的最佳时间,理清3个环节,出版会及时
公共卫生、环境卫生与职业卫生SSCI期刊推荐6本
未能解决您的问题?马上联系学术顾问

未能解决您的问题?

不要急哦,马上联系学术顾问,获取答案!

免费获取
扫码关注公众号

扫码关注公众号

微信扫码加好友

微信扫码加好友

职称驿站 www.zhichengyz.com 版权所有 仿冒必究
冀ICP备16002873号-3