论文部分内容阅读
教育部全国学生体质健康标准数据管理中心研发了一套体质健康管理系统,在全国已普遍采用。这套管理系统采用了使用较广泛的Excel进行数据导入与导出,这样提高数据的重用率和与其他软件的兼容性,为学生体质健康、体育达标评分工作提供了非常大的便利,避免了手工查询数据进行评分与登记的繁劳与人为出错的可能。同时,全国各地数据统一汇报到中国学生体质健康网后,又为各部门了解掌握与分析全国或部分地区的学生体质健康与
体育达标情况提供了依据与便利。作为在教育第一线的体育教师,更是直接的受益者。
在使用该统计表过程中,笔者发现这套管理系统美中不足的是它评分、划等级、生成Excel文档后并没有直接进行数据统计,需上传到中国学生体质健康网上后,过两天才能到网上查各种统计成绩。这样教师就不能及时地了解学生成绩情况。同时,网上的统计是分项的,一次只能生成一项的数据,使用起来不是很方便。能不能自己进行统计呢?当然,应该说由Excel文档再进行统计也不是难事,可偏偏此Excel文档每个单元格格式为“文本”,这样的格式中,数字作为文本处理,是不能进行运算的,这样平均分如何求得?改为“常规”后仍不能进行计算。左调右试,原来是改格式后,需激活方才有效。如何激活?需双击此单元格。(原表及统计表如http://flybase.51.net/体质健康统计示例.rar)这么多的数据,一个一个点是不是太机械,同时也不可能?何况,上级部门所需要的统计表复杂到分年级、分性别计算,再小计,全校再合计,如表1所示。
如何进行统计,得出上表的数据呢?体育达标工作转眼在春夏之交又将进行了,这项统计工作又将落在教师的身上,如何才能取得事半功倍甚至一劳永逸的效果呢?笔者经过摸索,寻找到以下几种解决方案与途径,因其具有广泛的适用性与参考意义,特抛出与大家共勉。
方案一 克服激活问题,进行统计
方法1:重新拷贝与选择性粘贴将需统计的表单全部拷贝,并新建一表,进行选择性粘贴。在选择性粘贴的对话框中选择运算为“加”,这样处理后的数据将可以进行计算。但非常可惜的是,除数字外,其余文字均不见了,对需要的文字应再选中其列,进行复制。显而易见,这绝非良策。
方法2:更改格式,再导入将表单另存为文本文件(在“另存为”对话框中选保存类型为“文本文件 *.txt”),再将数据导入(在菜单“数据/获取外部数据/导入文本文件”中按向导对话框提示点击“下一步”、“下一步”、“完成”即可)。
方法3:用VBA宏的方法激活进入菜单“工具/宏/Visual Basic编辑器”编写如下宏:
Sub 改格式并激活的宏()
Cells.Select
Selection.NumberFormatLocal = "G/通用格式"′改格式为常用
ActiveCell.SpecialCells(xlLastCell).Select′找到最后一格
MaxRow = ActiveCell.Row ′最大行
MaxCol = ActiveCell.Column′最大列
For i = 1 To MaxCol
CharOfCol = Chr(Asc("A") (i - 1) Mod 26) ′列的字母
If i > 26 Then CharOfCol = Chr(Asc("A") i 26 - 1)
体育达标情况提供了依据与便利。作为在教育第一线的体育教师,更是直接的受益者。
在使用该统计表过程中,笔者发现这套管理系统美中不足的是它评分、划等级、生成Excel文档后并没有直接进行数据统计,需上传到中国学生体质健康网上后,过两天才能到网上查各种统计成绩。这样教师就不能及时地了解学生成绩情况。同时,网上的统计是分项的,一次只能生成一项的数据,使用起来不是很方便。能不能自己进行统计呢?当然,应该说由Excel文档再进行统计也不是难事,可偏偏此Excel文档每个单元格格式为“文本”,这样的格式中,数字作为文本处理,是不能进行运算的,这样平均分如何求得?改为“常规”后仍不能进行计算。左调右试,原来是改格式后,需激活方才有效。如何激活?需双击此单元格。(原表及统计表如http://flybase.51.net/体质健康统计示例.rar)这么多的数据,一个一个点是不是太机械,同时也不可能?何况,上级部门所需要的统计表复杂到分年级、分性别计算,再小计,全校再合计,如表1所示。
如何进行统计,得出上表的数据呢?体育达标工作转眼在春夏之交又将进行了,这项统计工作又将落在教师的身上,如何才能取得事半功倍甚至一劳永逸的效果呢?笔者经过摸索,寻找到以下几种解决方案与途径,因其具有广泛的适用性与参考意义,特抛出与大家共勉。
方案一 克服激活问题,进行统计
方法1:重新拷贝与选择性粘贴将需统计的表单全部拷贝,并新建一表,进行选择性粘贴。在选择性粘贴的对话框中选择运算为“加”,这样处理后的数据将可以进行计算。但非常可惜的是,除数字外,其余文字均不见了,对需要的文字应再选中其列,进行复制。显而易见,这绝非良策。
方法2:更改格式,再导入将表单另存为文本文件(在“另存为”对话框中选保存类型为“文本文件 *.txt”),再将数据导入(在菜单“数据/获取外部数据/导入文本文件”中按向导对话框提示点击“下一步”、“下一步”、“完成”即可)。
方法3:用VBA宏的方法激活进入菜单“工具/宏/Visual Basic编辑器”编写如下宏:
Sub 改格式并激活的宏()
Cells.Select
Selection.NumberFormatLocal = "G/通用格式"′改格式为常用
ActiveCell.SpecialCells(xlLastCell).Select′找到最后一格
MaxRow = ActiveCell.Row ′最大行
MaxCol = ActiveCell.Column′最大列
For i = 1 To MaxCol
CharOfCol = Chr(Asc("A") (i - 1) Mod 26) ′列的字母
If i > 26 Then CharOfCol = Chr(Asc("A") i 26 - 1)