吉林师范大学计算机学院VBA电子教案课件06.ppt

吉林师范大学计算机学院VBA电子教案课件06.ppt

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章 竞赛评分模板 我们常在电视中看到各种竞赛节目。如青年歌手大赛。比赛内容、比赛形式、比赛规则各种各样,但多数采取评委现场打分的办法决出胜负或排出名次。评分办法一般是在多个评委所打的分数中,去掉一个最高分,去掉一个最低分,其余的取平均分,即为某选手一个单项的得分。竞赛的项目可能有多个,每个项目的最高分可能不同,各项总分之和为选手的总得分。最后根据每位选手的总得分排出名次。 在此过程中,用Excel和VBA做一个模板,可以轻松地解决这一问题,记分、算分、排序和打印都非常方便。下面具体介绍模板的设计和使用方法。 6.1 模板的结构设计 6.2 工具栏及其按钮的定义与控制 6.3 通用模块代码设计 模板的结构设计 6.2.1 工作簿的Open事件代码 6.2.2 工作簿的BeforeClose事件代码 6.2.3 工作簿的SheetActivate事件代码 通用模块代码设计 6.3.1 “统计” 6.3.2 “汇总” 6.3.3 “增项” 6.3.4 “还原” 模板的结构设计 总体上,竞赛评分模板是一个Excel工作簿。工作簿上设计一个“信息”工作表、一个“总分”工作表、若干个“项目”工作表,还有一个自定义工具栏。 “信息”工作表用来设置选手人数、评委人数和竞赛项目数等信息,它的格式可任意设置,数据根据实际情况确定,但各项信息所在单元格地址与编程有关,不要改动。 “总分”工作表用来存放选手各单项分、总得分和排名信息。它在设计时只是一个空表。当执行“汇总”程序时,自动生成有关信息。 各“项目”工作表按“第1项”、“第2项”、……命名,以便于程序处理。我们只需要设计出“第1项”工作表,其余的在需要时随时通过“增项”程序生成,不用时通过“还原”程序删除。 “第1项”工作表如图6.1所示。 其中,第一行从B列开始依次输入评委姓名,之后是“平均分”,A列从第二行开始依次输入选手姓名。 最后,根据自己的喜好设置不同单元格的背景、字符颜色和网格线。 自定义工具栏的目的是为了操作方便。工具栏命名为“比赛评分”,上面定义四个命令按钮:“统计”、“汇总”、“增项”和“还原”。“汇总”、“增项”和“还原”功能前面已提到过,“统计”的用途是对指定的选手求单项平均分,即在各位评委的打分中,去掉最高分和最低分并做上颜色标记,求出平均分。 6.2.1 工作簿的Open事件代码 对工作簿的OPEN事件编写具体代码。 程序中,首先建立一个工具栏,命名为“比赛评分”。然后,在工具栏上添加四个命令按钮:“统计”、“汇总”、“增项”和“还原”,分别指定要执行的过程:“tj”、“hz”、“zx”和“hy”,这四个过程在通用模块(模块1)中定义(见第三节)。最后,设置工具栏的可见属性,选择“信息”为当前工作表,使工具栏“统计”按钮不可用 6.2.2 工作簿的BeforeClose事件代码 BeforeClose事件在工作簿关闭之前产生,在此删除“比赛评分”工具栏。 Private Sub Workbook_BeforeClose(Cancel As Boolean) Application.CommandBars(比赛评分).Delete End Sub 6.2.3 工作簿的SheetActivate事件代码 SheetActivate事件在工作簿的当前工作表改变时产生,在此对工具栏中按钮的可用性进行控制。如果当前工作表为“总分”或“信息”,则使工具栏“统计”按钮不可用,否则可用。 Private Sub Workbook_SheetActivate(ByVal Sh As Object) If ActiveSheet.Name = “总分” Or ActiveSheet.Name = “信息” Then butt1.Enabled = False Else butt1.Enabled = True End If End Sub 6.3.1 “统计” 统计当前工作表(竞赛的某一项)任意选手的平均分,并用不同颜色标记最高、最低分。 在“信息”工作表的B2单元格取出评委人数,在当前工作表中指定选手的行中,对各位评委所打分数进行累加,挑出一个最高分一个最低分,对所在的单元各设置不同的背景颜色,以示区别,最后求出平均分,填入“平均分”列,并设置平均分单元格另一背景颜色。编写具体代码。 假设有8位评委,10位选手参赛,“第1项”满分为10分,各评委给1号选手的打分已输入工作表对应的单元格,单击“统计”命令按钮,就可以标记出该选手的最高分、最低分,并把平均分填入指定的单元格。各位选手的打分输入并统计之后,

文档评论(0)

ormition + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档