Excel宏的应用.doc_第1页
Excel宏的应用.doc_第2页
Excel宏的应用.doc_第3页
Excel宏的应用.doc_第4页
Excel宏的应用.doc_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Excel宏的应用-成绩分析处理程序文章来源:互联网Excel电子表格软件是应用最广泛的软件之一,它的数据处理、图表功能及各种函数和工具深受广大用户的喜爱。Excel文件是一个工作薄,一个工作薄最多可以包含255个工作表,每个工作表又可以包含大量的数据。 Excel的强大优势还在于它提供的宏语言Visual Basic for Application(VBA).Visual Basic是windows环境下开发应用软件的一种通用程序设计语言,功能强大,简便易用。VBA是它的一个子集,可以广泛地应用于Microsoft公司开发的各种软件中,例如Word、Excel、Access等。 那么,宏到底是什么呢? 在Excel中,宏是一个难以理解的概念,但对于一个具体的宏而言,却是容易理解的,如果说将一块文字变为黑体,字号为三号就可以看作一个宏的话,那么宏就不难理解了,其实Excel中的许多操作都可以是一个宏。 记录宏其实就是将工作的一系列操作结果录制下来,并命名存储(相当于VB中一个子程序)。在Excel中,记录宏仅记录操作结果,而不记录操作过程。例如,改变文字字体时,需要打开字体栏中的下拉列表,再选择一种字体,这时文字即变为所选择的字体,这是一个过程,结果是将所选择的文字改变为所选择的字体。而记录宏则只记录将所选择的文字改变为所选择的字体这一结果。 Excel中工作表是由行和列组成的二维表格,我们可以通过系统提供的语句activesheet.cells(I,j),将当前工作表中的第I行第j列所在的单元格中的数据取出(也可将它数据填入到指定的单元格中),然后反把它放入所定义的数组中,这时就可以对其进行各种操作,如求平均分、总分、分数段人数等等。 本人就利用Excel中所提供的宏功能来做学生成绩的分析处理程序。本程序是Excel中的一个文件,其中包含以下几个宏:分班、总分、平均分、分数段、删除等。 本程序是以本校高三理科班学生成绩进行分析。 有关程序中用到的几具宏的功能说明: 分班:针对于难以确定班级的情况下,以班为单位进行分班,本宏可以作为高一新生入学时进行分班的功能。 总分:对原始的成绩自动求总分。 平均分:对原始的成绩以班为单位进行各学科平均成绩的计算及全校各学科成绩的计算。 分数段:给定一个最高分数及最低分数,然后统计出各班各个分数段的人数,各分数段人数进行累计。 删除:用于删除不用的工作表。 现将各个宏的代码列举如下: 一.分班 Sub 分班()Const studentno = 191 学生人数Const zdno = 12 字段数Dim zd$(zdno) 定义为12个字段的数组Dim a(studentno, zdno), stu(60, zdno)Dim nam$(studentno), bjname$(60) 定义一个存放全校学生名字及各班学生名字的数组Dim bj(studentno) 定义存放班级的一个数组理科班工作表Sheets(高三理).SelectFor i = 2 To studentno bj(i) = ActiveSheet.Cells(i, 1) nam$(i) = ActiveSheet.Cells(i, 2) For j = 3 To zdno a(i, j) = ActiveSheet.Cells(i, j) Next jNext i存放字段到数组中。For i = 1 To zdno zd$(i) = ActiveSheet.Cells(1, i)Next i先建立各个班级的工作表 Sheets(高三理).Select Sheets(高三理).Copy After:=Sheets(分数段) Sheets(高三理 (2).Select Sheets(高三理 (2).Name = 33 For i = 2 To studentno For j = 1 To zdno ActiveSheet.Cells(i, j) = Space$(1) Next j Next i Range(a1).Select For i = 1 To zdno ActiveSheet.Cells(1, i) = zd$(i) Next i34到36班工作表的建立 For i = 34 To 36 x$ = Mid$(Str(33), 2) Sheets(x$).Select Sheets(x$).Copy After:=Sheets(分数段) Sheets(x$ + (2).Select Sheets(x$ + (2).Name = Mid$(Str(i), 2) Next i具体分班。 For k = 33 To 36 bjrs = 0 x$ = Mid$(Str(k), 2) no = k Mod 10 Sheets(x$).Select For i = 2 To studentno If bj(i) = no Then bjrs = bjrs + 1 bjname$(bjrs) = nam$(i) For j = 3 To zdno stu(bjrs, j) = a(i, j) Next j End If Next i For i = 2 To bjrs ActiveSheet.Cells(i, 1) = no ActiveSheet.Cells(i, 2) = bjname$(i) For j = 3 To zdno ActiveSheet.Cells(i, j) = stu(i, j) Next j Next i Next kEnd Sub 二.总分 Const studentno = 190Const xknum = 6Const zdnum = 12 Sheets(高三理).Select For i = 2 To studentno + 1 Sum = 0 For j = 1 To xknum Sum = Sum + ActiveSheet.Cells(i, j + 3) Next j ActiveSheet.Cells(i, zdnum-1) = Sum Next iEnd Sub 三.平均分 Sub 平均分()Const studentno = 190Const xknum = 6Dim fs(studentno, xknum), pjf3(4, 6), bjrs(4), qxpjf(6)Dim bj(studentno)Sheets(高三理).Select以下程序段用于求全校平均分For i = 1 To studentno bj(i) = ActiveSheet.Cells(i + 1, 1) For j = 1 To xknum fs(i, j) = ActiveSheet.Cells(i + 1, j + 3) Next jNext iFor i = 1 To xknum Sum = 0 For j = 1 To studentno um = Sum + fs(j, i) Next j qxpjf(i) = Sum / (j - 1)Next i以下程序段用于求各班平均分 For j = 1 To 4 For i = 1 To studentno Ifbj(i) = j + 2 Then bjrs(j) = bjrs(j) + 1 For k = 1 To xknum pjf3(j, k) = pjf3(j, k) + fs(i, k) Next k End If Next i Next jFor j = 1 To 4 For i = 1 To 6 pjf3(j, i) = pjf3(j, i) / bjrs(j) Next iNext j写入各班各科平均分Sheets(平均分).SelectFor i = 1 To 4 For j = 1 To 6 ActiveSheet.Cells(i + 2, j + 1) = pjf3(i, j) Next jNext i写入全校各科平均分i = 7For j = 1 To 6 ActiveSheet.Cells(i, j + 1) = qxpjf(j)Next jEnd Sub 四.分数段 Sub 分数段()Const max = 600Const min = 390Const studentno = 190Const bjnum = 4Const fsdnum = 22Dim bjfsd(bjnum, fsdnum), zf(studentno, 2)Sheets(高三理).SelectFor i = 1 To studentno zf(i, 1) = ActiveSheet.Cells(i + 1, 1) 存放班级 zf(i, 2) = ActiveSheet.Cells(i + 1, 11) 存放总分Next i For i = 1 To studentno For j = 1 To 4 3-6班共4个班级 If zf(i, 1) = j + 2 Then For k = max To min Step -10 low = Int(max + 10 - k) / 10) If zf(i, 2) k Then bjfsd(j, low) = bjfsd(j, low) + 1 Next k End If Next jNext iSheets(sheet3).SelectFor i = 3 To 6 For k = 1 To fsdnum ActiveSheet.Cells(i, k + 1) = bjfsd(i - 2, k) Next kNext i Range(M3:W6).Select Selection.Cut ActiveWindow.LargeScroll ToRight:=-1 Range(B8).Select ActiveSheet.PasteEnd Sub 五.删除 Sub 删除() Sheets(33).Select ActiveWindow.SelectedSheets.Delete Sheets(34).Select ActiveWindow.SelectedSheets.Delete Sheets(35).Select ActiveWindow.SelectedSheets.Delete Sheets(36).Select ActiveWindow.SelectedSheets.DeleteEnd Sub 六.本程序的界面及各个宏运行的结果 平均分统计结果 : 总分统计结果 : 分班结果 分数段统计结果 常用办公软件 Excel技巧的整理、讲解,在这里给读者们看一看,给大家一些提示,希望在你在平时能用得上。 1、两列数据查找相同值对应的位置=MATCH(B1,A:A,0)2、已知公式得结果定义名称=EVALUATE(Sheet1!C1)已知结果得公式定义名称=GET.CELL(6,Sheet1!C1)3、强制换行用Alt+Enter4、超过15位数字输入这个问题问的人太多了,也收起来吧。一、单元格设置为文本;二、在输入数字前先输入5、如果隐藏了B列,如果让它显示出来?选中A到C列,点击右键,取消隐藏选中A到C列,双击选中任一列宽线或改变任一列宽将鼠标移到到AC列之间,等鼠标变为双竖线时拖动之。6、EXCEL中行列互换复制,选择性粘贴,选中转置,确定即可7、Excel是怎么加密的(1)、保存时可以的另存为右上角的工具常规设置(2)、工具选项安全性8、关于COUNTIFCOUNTIF函数只能有一个条件,如大于90,为=COUNTIF(A1:A10,=90)介于80与90之间需用减,为 =COUNTIF(A1:A10,80)-COUNTIF(A1:A10,90)9、根据身份证号提取出生日期(1)、=IF(LEN(A1)=18,DATE(MID(A1,7,4),MID(A1,11,2),MID(A1,13,2),IF(LEN(A1)=15,DATE(MID(A1,7,2),MID(A1,9,2),MID(A1,11,2),错误身份证号)(2)、=TEXT(MID(A2,7,6+(LEN(A2)=18)*2),#-00-00)*110、想在SHEET2中完全引用SHEET1输入的数据工作组,按住Shift或Ctrl键,同时选定Sheet1、Sheet2。11、一列中不输入重复数字数据-有效性-自定义-公式输入=COUNTIF(A:A,A1)=1如果要查找重复输入的数字条件格式公式=COUNTIF(A:A,A5)1格式选红色12、直接打开一个电子表格文件的时候打不开“文件夹选项”-“文件类型”中找到.XLS文件,并在“高级”中确认是否有参数1%,如果没有,请手工加上13、Excel下拉菜单的实现数据-有效性-序列14、 10列数据合计成一列=SUM(OFFSET($A,(ROW()-2)*10+1,10,1)15、查找数据公式两个(基本查找函数为VLOOKUP,MATCH)(1)、根据符合行列两个条件查找对应结果=VLOOKUP(H1,A1:E7,MATCH(I1,A1:E1,0),FALSE)(2)、根据符合两列数据查找对应结果(为数组公式)=INDEX(C1:C7,MATCH(H1&I1,A1:A7&B1:B7,0)16、如何隐藏单元格中的0单元格格式自定义0;-0; 或 选项视图零值去勾。呵呵,如果用公式就要看情况了。17、多个工作表的单元格合并计算=Sheet1!D4+Sheet2!D4+Sheet3!D4,更好的=SUM(Sheet1:Sheet3!D4)18、获得工作表名称(1)、定义名称:Name=GET.DOCUMENT(88)(2)、定义名称:Path=GET.DOCUMENT(2)(3)、在A1中输入=CELL(filename)得到路径级文件名在需要得到文件名的单元格输入=MID(A1,FIND(*,SUBSTITUTE(A1,*,LEN(A1)-LEN(SUBSTITUTE(A1,)+1,LEN(A1)(4)、自定义函数Public Function name()Dim filename As Stringfilename = ActiveWname = filenameEnd Function19、如何获取一个月的最大天数:=DAY(DATE(2002,3,1)-1)或=DAY(B1-1),B1为2001-03-01数据区包含某一字符的项的总和,该用什么公式=sumif(a:a,*&某一字符&*,数据区)最后一行为文本:=offset($b,MATCH(CHAR(65535),b:b)-1,)最后一行为数字:=offset($b,MATCH(9.9999E+307,b:b)-1,)或者:=lookup(2,1/(b1:b1000),b1:b1000)评委打分中,如何去掉两个以上最高分,两个以上最底分,求剩余人员的平均分?同时显示出被去掉的分数。看看trimmean()函数帮助。被去掉的分数:最大两个:=large(data,)最小两个:=small(data,)怎样很简单的判断最后一位是字母right(a1)*1出错的字母=IF(ISNUMBER(-RIGHT(A1,1),数字,字母)=IF(ISERR(RIGHT(A1)*1),字母,数字)如何 设置单元格,令其不接受包含空格的字符选定A列数据有效性自定义公式=iserror(find( ,a1)数据-有效性-自定义-公式=len(a1)=len(trim(a1)原来的函数是=a1+a4+a7+a10+a13+a16+a19+a22现在是=sum(n(offset(a1,(row(1:10)-1)*3,)在一个工作表中引用其他工作表中的数据,但是被引用的工作表不是固定的,根据我输入的工作表名自动选择相应的工作表中的数据,请问在公式里怎样引用?=INDIRECT(A1&!&E1) A1为工作表名奇数行求和 =SUMPRODUCT(A1:A1000)*MOD(ROW(A1:A1000),2)偶数行求和 =SUMPRODUCT(A1:A1000)*NOT(MOD(ROW(A1:A1000),2)查看字符串字数=LEN(A1)求非空单元格数量公式计算出来的数据,COUNTA不能用的(否则空字符也计算进去了)=COUNTIF($E:$E536,?*)动态求和公式,自A列A1单元格到当前行前面一行的单元格求和.=SUM(INDIRECT(A1:A&ROW()-1)20、比较好用的Excel文档修复工具ExcelRecovery21、EXCEL开方运算将8开3次方,可以用这个公式,在单元格中输入=8(1/3)22、单元格中的数据分散对齐文本格式全角输入23、查找工作表中的链接Ctrl+ 或编辑链接24、如何让空单元格自动填为0选中需更改的区域查找空替换025、把Word里的数字转换到Excel方法有多种,选中复制设置输入单元格为文本选择性粘贴值选中表格转换为文本粘贴分列对分列选项设置为文本另存为文本文件EXCEL中打开文本文件对导入文本对话框进行对应设置如今使用Excel协助处理各种各样数据的人已经越来越多了,但Excel中一些隐蔽很深的小技巧却不为大多数人所知,下面我们就把几个实用的、常用的小技巧列举给大家。 一、快速选中所有非空单元格:在Excel中选中所有单元格比较容易,只需单击工作表左上角的行号(A、B、C)行与列号(1、2、3、)列的交叉空格,也可以按住左键拖选。但如果要在一个有几百几千行数据的工作表中选中所有有数据的单元格时,再去按住左键拖选就有点麻烦了,这时我们可以这样做:先在任意一个有数据的单元格中单击,然后按Ctrl+Shift+*键(先用一只手按住一个Ctrl键和一个Shift键不放开,再用另一只手按一下星号键)就能轻松搞定了。 二、快速打开所需工作表:我们一般把许多数据相关的工作表建在一个工作簿中,且为查看方便,每个工作表的名都用汉字起得很长,由于受屏幕大小的限制,就造成了有许多工作表名称没有被显示出来,这时我们可以右键单击第一个工作表名前边的工作表选择按钮,再在弹出的菜单中选择你看不到的工作表。(如图1) 图1三、快速定位到某一单元格: 有时我们需要在一个几百上千的工作表中快速定位到某一个单元格,如想快速查看年级段第200名同学的总成绩: 1、单击“编辑”定位,在“定位”对话框中的“引用位置”框中输入L201(L是“总分”所在列,201是因为有表头,所在200名的基础上加1。)点“确定”就能直接定位到年级段第200名同学总成绩的单元格了。(如图2) 图2(点击看大图) 2、在编辑栏上的地址栏中直接输入行列号,然后回车即可。(如图3) 四、打印行列号: 为了更加方便的查看数据及公式引用,有时需要把工作表的行号和列号也打印出来,如实施素质教育的今天,不准给学生排名次,但我们可以利用列号来查看学生的具体名次:单击“文件”页面设置,在“页面设置”对话框中选择“工作表”选项卡,在“打印”项中把“行号列标”勾选上,点“确定”退出后再打印就可以了。(如图4) 图4五、利用分页预览调整打印区域: 数据在打印输出之前一般要使用打印预览查看一下纸张是否够大,如果只多出一两行或一两列,则需返复调整,这时可以单击“视图”分页预览,在分页预览模式下,直接按住左键拖动分页符(蓝色虚线)就可以了,调整完后再单击“视图”普通,返回默认模式。(如图5) Excel快速计算、统计混合编班考试成绩表 为了保证学生成绩录入和处理的公平性,学校采用混合编班统一录入的方式。也就是说,把同年级多个班的学生成绩统一录入到一个Excel工作表中,而且使同班的学生不相邻。这种情况下,想在不破坏原始工作表的情况下统计各班学生各科的总分、平均分及各科的分数段分布,咱们还得好好动一下脑子。 先看一下原始成绩表,如图1所示。 图 1第一列为学生的考号,其中考号的第5位和第6位数字是班级代码。学生各科的成绩分别在C、D、E、F列。而我们需要统计的是各学科各班的总分、平均分及各分数段人数等项指标,如图2所示。 图 2一、总分的统计 在不破坏原工作表顺序的情况下,总分的统计我们可以使用SUM函数及数组公式来完成。 首先点击L3单元格计算01班语文科的总成绩。 输入“=SUM(IF(MID($A$2:$A$150,5,2)= $K3,$C$2:$C$150)”,然后按下“Ctrl+Shift+Enter”快捷键,可以看到公式的最外层添加了数组公式标记(一对大括号),公式变身成为“=SUM(IF(MID($A$2:$A$150,5,2)= $K3,$C$2:$C$150)”。切记这对大括号是不可以手工输入的。 按下快捷键后,L3单元格立刻显示出了01班语文科的总分。快吧?还有更快的呢。单击此单元格,向下拖动其填充句柄至L10单元格复制此公式,立刻各班的语文科总分就都有了。 方便吧?简单介绍一下公式中用到的相关函数,那咱们就可以举一反三了。 MID($A$2:$A$150,5,2)= $K3:K3单元格是班级代码。而MID函数可以截取字符串中的指定字符,如MID(A2,5,2)的含义是从A2单元格字符串的第5个字符开始截取2个字符组成新的字符串。至于公式中所写的的MID($A$2:$A$150,5,2)就可以利用数组公式对A2至A150单元格中的字符串逐一截取了。 而IF函数当然是用作判断了。IF(MID($A$2:$A$150,5,2)= $K3是判断截取的字符串是否与在K3单元格中的字符串相同。 整个公式的意思是:逐一判断A2至A150单元格中第5、6字符串是否与K3单元格的字符串相同,如果相同,那么就把同一行中C列的单元格数据进行累加。 二、平均分的统计 明白了各班总分是怎么计算出来的,那么平均分的计算就易如反掌了。仍然点击L3单元格,拖动其填充句柄向右至M3单元格,松开鼠标后在M3单元格同样可以得到01班语文科的总分。不要紧,在公式编辑栏中把公式中的“SUM”函数更改为“AVERAGE”函数,再按下“Ctrl+Shift+Enter”快捷键。好了,现在看到结果了吧? 选中M3单元格,向下拖动填充句柄至M10单元格复制此公式。行了,各班的语文平均分就都有了。三、分数段统计 在混合编班而又不破坏原表顺序的情况下,我们就不能使用常用的COUNTIF函数或FREQUENCY函数来统计各分数段人数。我们可以使用SUMPRODUCT函数来完成这个任务。 点击N3单元格统计01班语文成绩在90分以上的人数。在此单元格输入公式“=SUMPRODUCT(MID($A$2:$A$150,5,2)=$K3)*($C$2:$C$150=90)”,然后按下回车键。对,是回车键,而不是前面用的“Ctrl+Shift+Enter”快捷键。按下回车键后自然可以看到统计结果了。 这个公式的意思是:统计考号的5、6两位字符串与K3单元格字符串相同且C2:C150单元格数据大于90的单元格个数。“*”符号前后的括号内就是我们设置的条件。如果要设置的条件更多,那就再添加“*”,并在其后添加括号,在括号内添加条件就是了。 如法炮制,在O3单元格输入如下公式“=SUMPRODUCT(MID($A$2:$A$150,5,2)=$K3)*($C$2:$C$150=80)*($C$2:$C$15090)”,回车后就可以得到80-89分这一分数段的人数了。 选中O3单元格,向右拖动其填充句柄复制公式至S3单元格。并根据要统计的不同的分数段,修改各单元格的公式。如S3单元格的公式应修改为“=SUMPRODUCT(MID($A$2:$A$150,5,2)=$K3)*($C$2:$C$150=85)/COUNT(C$2:C$95),回车所得即为语文学科的优秀率。点击M6单元格,输入公式:=COUNTIF(C$2:C$95,=60)/COUNT(C$2:C$95),回车所得即为及格率。选中M3:M6单元格,拖动填充句柄向右填充公式至Q6单元格,松开鼠标,各学科的统计数据就出来了。再选中M5:Q6单元格区域,点击菜单命令“格式单元格”,打开“单元格格式”对话框。点击“数字”选项卡,在左侧“分类”列表中选择“百分比”,如图3所示,确定后可将M5:Q6单元格区域的数据转变成百分比形式。 至于各科分数段人数的统计,那得先选中M8:M15单元格,在编辑栏中输入公式:=FREQUENCY(C$2:C$95,$K$8:$K$15)。然后按下“Ctrl+Shift+Enter”快捷键,可以看到在公式的最外层加上了一对大括号。现在,我们就已经得到了语文学科各分数段人数了。在K列中的那些数字,就是我们统计各分数段时的分数分界点。现在再选中M8:M15单元格,拖动其填充句柄向右至Q列,那么,其它学科的分数段人数也立即显示在我们眼前了。最终的结果如图4所示。如果觉得K列的数据有碍观瞻,那么可以选中它们,然后设置它们的字体颜色为白色就可以了。 利用EXCEL进行学生成绩管理在老师的日常工作中,对学生的成绩进行统计分析管理是一项非常重要也是十分麻烦的工作,如果能够利用EXCEL强大的数据处理功能,就可以让各位老师迅速完成对学生的成绩的各项分析统计工作。下面就向各位朋友介绍一些利用EXCEL进行学生成绩管理的小技巧。 一、快速转换学生考试成绩等级 有的时候,会遇到要将学生的考试成绩按实际考试分数转换成相应成绩等级的情况,如将考试成绩在90分以上的成绩转换成“A+”形式,85-89分的成绩转换成“A”形式.。一般情况,在EXCEL表格中大家会采用IF()函数来设计公式进行转换,这样所设计的公式会变得很复杂,如果进行转换的成绩等级类型超过IF()函数的最大嵌套(7层)时,IF()函数就无能为力了。这时我们可用如下的方法来简化操作。 1、打开学生成绩工作表(格式内容见图1)。 2、在G2到I12单元格录入考试成绩分数段与考试成绩等级对照表。 3、在D3单元格录入公式“=INDEX(I$3:I$12,MATCH(1,(C3=G$3:G$12)*(C3excel中是比较简单的。这种排序表的好处是前几名优生和后几名差生一目了然。真正起到了鼓励和鞭策的作用。本人不擅长office,也不知道其他学校是否用计算机对图中在不改动学号顺序和对应姓名关系的前提下,完成名次项填写。 笔者经过反复摸索。总结出自认为是最简单易行的方法,供读者参考。 方法和步骤如下: 1 录入完分数后,对学号、姓名和分数进行多个字段排序。方法是以分数为主排序,鼠标点击第一个分数按住向左下拖动选定前三列后,点击降序按钮,排出了高分到低分的分数排序。 2 在名次列中从上到下输入110,最简单的方法是输入1后右击鼠标按住向下拖动至10,选定序列方式填充即可。 3 以学号为主排序,即恢复原来的学号排序。鼠标点击学号列第一个(不是一号)按住向右下拖动至名次列最后选定前四列后,点击升序按钮,还原学号排序。 这样就完成了图表中的第一次考试成绩和名次的录入。如果要完成以后几次考试成绩和名次的录入工作,可把前次考试成绩和名次两列隐藏起来后,按上述方法录入完后,取消隐藏即可。 用EXCEL轻松的处理学生成绩期末考试结束后,主任要求班主任自已统计本班成绩,尽快上报教导处。流程包括录入各科成绩计算总分、平均分并排定名次统计各科分数段人数、及格率、优秀率及综合指数打印各种统计报表制作各科统计分析图表等。有了EXCEL,我们可用不着躬着身、驼着背、拿着计算器一个一个算着学生的成绩了! 我迅速地打开电脑,启动EXCEL2000,录入学生的考试成绩,如图1所示。然后在J2单元格处输入公式=sum(c2:i2),然后拖动填充柄向下填充,便得到了每人的总分。接着在k2单元格处输入公式=average(c2:i2),然后拖动填充柄向下填充,便得到了每人的平均分。 平均分只需保留一位小数,多了没用。所以选中第k列,用鼠标右键单击,从弹出的快捷菜单中选设置单元格格式(F),如图2所示,在数字标签中选中数值,小数位数设置为1位。 下面按总分给学生排出名次。 在L2单元格处输入公式RANK(J2,J$2:J$77,0),然后拖动填充柄向下填充,即可得到每人在班中的名次(请参考图1)。 说明:此处排名次用到了RANK函数,它的语法为: RANK(number,ref,order) 其中number为需要找到排位的数字。 Ref为包含一组数字的数组或引用。Ref 中的非数值型参数将被忽略。 Order为一数字,指明排位的方式。 如果 order 为 0 或省略,Microsoft Excel 将 ref 当作按降序排列的数据清单进行排位。 如果 order 不为零,Microsoft Excel 将 ref 当作按升序排列的数据清单进行排位。 最后,单击L1单元格,然后在“工具”菜单中选“排序”“升序”,即可按照名次顺序显示各学生成绩。 另外,我们还希望把不及格的学科突出显示,最好用红色显示。于是拖拉选择C2:E78(即所有学生语、数、外三科成绩),然后执行格式菜单下条件格式命令,弹出条件格式对话框。我们把条件设为小于72分的用红色显示(因为这三科每科总分为120分),点击格式按钮,把颜色设为红色。再按确定按钮。然后用同样的方法把理、化、政、历四科小于60分的也用红色显示(因为这四科每科总分为100分)。 下面我们来统计各科的分数段以及及格率、优生率、综合指数等。 下面我们来统计各科的分数段以及及格率、优生率、综合指数等。 (1)60分以下人数:在C78单元格处输入公式=COUNTIF(C2:C77,60),拖动填充柄向右填充至I78单元格处; (2)60分69分人数:在C79单元格处输入公式=COUNTIF(C2:C77,=60)-COUNTIF(C2:C77,=70),拖动填充柄向右填充; (3)70分79分人数:在C80单元格处输入公式=COUNTIF(C2:C77,=70)-COUNTIF(C2:C77,=80),拖动填充柄向右填充; (4)80分89分人数:在C81单元格处输入公式=COUNTIF(C2:C77,=80)-COUNTIF(C2:C77,=90),拖动填充柄向右填充; (5)90分以上人数:在C82单元格处输入公式=COUNTIF(C2:C77,=90),拖动填充柄向右填充; (6)平均分:在C83单元格处输入公式=AVERAGE(C2:C77),拖动填充柄向右填充至I83; (7)最高分:在C84单元格处输入公式=MAX(C2:C77),拖动填充柄向右填充至I84; (8)低分率:是指各科40分以下人数与总人数的比值。在C85单元格处输入公式=COUNTIF(C2:C77,=40)/COUNT(C2:C77)*100,拖动填充柄向右填充至I85; (9)及格率:语、数、外三科及格分为72分,所以在C86单元格处输入公式=(COUNTIF(C2:C77,=72)/COUNT(C2:C77)*100,并拖动填充柄向右填充至E86;而理、化、政、历等四科及格分60分,所以在F86单元格处输入公式=(COUNTIF(F2:F77,=60)/COUNT(F2:F77)*100,并拖动填充柄向右填充至I86; (10)优生率:语、数、外三科96分以上为优生,所以在C87单元格处输入公式=(COUNTIF(C2:C77,=96)/COUNT(C2:C77)*100,拖动填充柄向右填充至E87;理、化、政、历等四科80分以上为优生,所以在F87单元格处输入公式=(COUNTIF(F2:F77,=80)/COUNT(F2:F77)*100,拖动填充柄向右填充至I87处;如图3所示。 (11)综合指数:我们学校的综合指数的计算公式为z=(1+优生率低分率)/2+及格率+平均分/该科总分/3。所以在C88单元格处输入公式=(1+C87/100-C85/100)/2+C86/100+C83/120)/3,拖动填充柄向右填充至E88;在F88单元格处输入公式=(1+F87/100-F85/100)/2+F86/100+F83/100)/3,拖动填充柄向右填充至I88。如图3所示。 对了,为了让别人对各科的分数段有一个较直观的认识,可以考虑采用图表。单击“插入”菜单中“图表”命令,弹出“图表向导”对话框,在“图表类型”列表框中选择一种图型,如“饼图”,单击“下一步”,单击“数据区域”文本框右边的压缩列表框,拖拉选择B78:C82,再次点击该压缩列表框;单击“下一步”,输入图表标题,如“高一(1)班语文成绩分析图”;单击“下一步”,再单击“完成”。如图4所示。其它各科同样处理,但在拖拉选择数据区域时,因为是不连续的区域,所以要按住“Ctrl”键。好!一切OK! 且慢!为了以后的考试中不再重复上述繁琐的工作,最好把上述工作表另存为一个模板。于是我把上述工作表复制一份到另一工作簿中,然后删掉所有学生的单科成绩(即表中C2:I77部分),执行文件菜单中的另存为命令,在保存类型下拉列表框中选模板(*.xlt),把它保存为一个模板文件,这下可以一劳永逸了。 用EXCEL轻松的准备考前工作大考在即,主任要求“考务工作必须电子化”,为了万无一失,还特意提供给班主任一份考务工作流程图: 考前:考场编排打印单科成绩册打印考场记录单打印准考证号 考后:录入各科成绩计算总分、平均分并排定名次统计各科分数段人数、及格率、优秀率及综合指数打印各种统计报表制作各科统计分析图表 既然任务已经明确,先把考前的准备工作做好吧!具体工作包括:考场编排打印单科成绩册打印考场记录单打印准考证号 1、单科成绩册的编制和准考证号的自

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论