①选中M2单元格,单击“插入函数”按钮,在常用公式列表中选择“多条件求和”,参数中待求和区域为班级,条件1为班级等于1,条件2为语文不小于100分,然后单击“插入公式”。
由于得到的结果是满足条件的“和”,而这里希望得到的是满足条件的个数,因此将公式“SUMPRODUCT($A$2:$A$650,1*(OFFSET($A$2:$A$650,0,SUM(COLUMN($A$2:$A$650)-COLUMN($A$2:$A$650)))=1)*(OFFSET($A$2:$A$650,0,SUM(COLUMN($B$2:$B$650)-COLUMN($A$2:$A$650)))>=100))” 修改为“=(SUMPRODUCT($A$2:$A$650,1*(OFFSET($A$2:$A$650,0,SUM(COLUMN($A$2:$A$650)-COLUMN($A$2:$A$650)))=$L2)*(OFFSET($A$2:$A$650,0,SUM(COLUMN(B$2:B$650)-COLUMN($A$2:$A$650)))>=100)))/$L2”,即得出满足条件的个数(1班语文成绩大于等于100分的人数,注意公式中的相对引用与绝对引用的用法)。 ②选中M2单元格,向右自动填充至P2单元格,再分别修改各个单元格中公式的参数(即要统计的分数段,如物理是>=80),再选中(M2:P2)单元格区域,向下自动填充,即可快速统计出语文、数学、英语、物理学科每个班的学生人数。
1、制作成绩表 首先打开WPS表格制作一张成绩记录表,这个比较简单就不细说了。然后在成绩记录表右侧另外增加4列(J:M)。
并按图示输入列标题(图1)。 选中J1单击菜单“数据/有效性”,在“数据有效性”窗口的“设置”选项卡下,单击“允许”的下拉列表选择“序列”,在“来源”中输入公式=$C$1:H$1,确定完成设置。
选中K列右击选择“设置单元格格式”,在“设置单元格格式”窗口的“数字”选项卡“分类”中选择“文本”,确定将K列设置为文本格式。 2.设置公式 选中J2单元格,输入公式=IF(ISERROR(VLOOKUP(A2,L:M,2,FALSE)),"",VLOOKUP(A2,L:M,2,FALSE))。
公式表示按A2的学号在L:M查找并显示相应的分数,当没找到出错时显示为空。在L2输入公式=VALUE("2007"&LEFT(K2,3)),公式用于提取K2数据左起三位数并在前面加上2007,然后转换成数值。
由于同班学生学号前面部分一般都是相同的,为了加快输入速度我们设置为只输入学号的最后三位数,然后L2公式就会自动为提取的数字加上学号前相同的部分“2007”显示完整学号,若需要也可设置为只输入两位学号。接着在M2输入公式=VALUE(MID(K2,4,5)),提取K2数据从第4位以后的5个数字(即分数)并转成数值。
当然若学号后数字不足5位,电脑也会聪明地只提取实际那几位。最后选中J2:L2单元格区域,拖动其填充柄向下复制填充出与学生记录相同的行数(图2)。
注:VALUE函数用于将提取的文本转成数值。若学号中有阿拉伯数字以外的字符,例:2007-001或LS2007001,则学号就自动变成了文本格式,此时L2的公式就不必再转成数值了应该改成="LS2007"&LEFT(K2,3),否则VALUE函数会出错。
3.预防输入错误 大量输入难免会有输入错误的时候,选中K列单击菜单“格式/条件格式”,在“条件格式”窗口中的条件1下的下拉按钮选择“公式”并输入公式=L1=2007,不进行格式设置。然后单击“添加”按钮,添加条件2,设置公式为=COUNTIF(L: L,L1)>1,单击后面的“格式”按钮,在格式窗口的“图案”选项卡中设置底纹为红色,确定完成设置(图3)。
这样当在L列中出现两个相同学号时,就会变成红色显示。按前面的公式设置当K列为空时L列将显示为“2007”,因此前面条件1的当L1=2007时不设置格式,就是为了避开这个重复。
此外,若担心分数输入错误,还可再添加一个条件3,设置公式为=M1>120,颜色为黄色,即可在输入的分数超过120时变成黄色提醒。 4.快速录入成绩 OK,到此复杂的设置已经完成了,以后需要输入成绩时,只要先单击J1单元格的下拉按钮,从下拉列表中选择要输入的列标题(例:期中),再选中K2输入第一个学生的学号和成绩00159,回车,后面的L2、M2就会显示学生的学号2007001、分数59,同时分数会自动填写到学号为2007001行的J列单元格。
我们只要这样重复输入学号分数、回车,即可轻松完成全部学生的成绩录入。在输入时如果学号出现重复,则输入的单元格和与其重复的单元格会同时以红色显示,提醒你输入可能出错了(图4)。
由于学号和成绩是按试卷顺序输入的,因此即使输入错误你也可以很方便地翻出错误输入值所在的试卷校对。 全部输入完成后,再选中J列进行复制,然后选中“期中”成绩所在的E列,右击选择“选择性粘贴”,在弹出窗口中单击选中“数值”单选项,确定将J列分数以数值方式粘贴到E列就彻底完成了成绩录入。
在WPS表格中,巧妙使用“定位”功能,把图1所示的成绩表打造成如图2所示的成绩单,并非难事。
图1 图2 第一步:在成绩表中添加空行 我们需要设置辅助列。在I1单元格输入“辅助列”,I2单元格输入“1”,I3单元格输入“=1/0”。
然后选中I2:I3单元格,按下“Ctrl”键,双击该单元格区域的填充句柄,使向下填充公式至最后一行。如图3所示。
图3 按“Ctrl+G”快捷键,打开“定位”对话框。如图4所示。
图4 选中“数据”单选项、“公式”和“错误”复选项,清除其它单选项和复选项的选中状态,点击“定位”按钮,然后关闭此对话框。此时,所有错误单元格均呈选中状态。
点击菜单命令“插入→行”,可以得到如图5所示效果。 图5 可以看到,仍有相邻的两行成绩。
所以,还需要再次插入空行。 在I2:I4单元格均输入“1”,I5单元格输入“=1/0”,然后选中I4:I6单元格区域,按下“Ctrl”键向下填充公式。
再次按“Ctrl+G”,同前面一样,定位“错误”,插入“行”,就可以得到如图6的效果了。辅助列的内容此时可以全部删除了。
图6 第二步:为成绩单添加标题 选中A:H列单元格,按“Ctrl+G”快捷键打开“定位”对话框。选中“空值”单选项,然后点击“定位”按钮选中成绩表中的空格(如果成绩表中原有空格,应该先填入内容)。
在编辑栏中输入公式“=A$1”,然后按下“Ctrl+Enter”组合键,如图7所示,该有的标题就都有了。 图7 为了美观,标题行前应再添加一个空行。
仍使用辅助列,在I1和I2单元格分别输入“=1/0”和“1”,然后向下填充公式,再定位“错误”,再插入“行”,操作如前,不再罗索了。 第三步:设置单元格边框 此时的问题在于空行单元格仍有边框,不太美观。
我们可以再用定位“空值”的办法,选中全部空行,然后点击菜单命令“格式→单元格格式”,将单元格边框只保留上下两条边线就可以了,如图8所示。 图8 其实,很多任务完成起来并不困难。
麻烦之处可能在于单元格区域的选取,此时,不妨试试“定位”功能,说不定会有意外惊喜呢。
在每次成绩公布时都需要面对一个难题:《学生成绩表》为了方便汇总,每人成绩占据一行;而每个学生之《成绩通知单》为了美观却设计为多行多列。
如何方便而快速地进行格式转换?WPS表格的函数可以轻松地为您解决疑难。 首先,让我们看看《成绩表》和《成绩通知单》的格式(您可以下载该文件,以方便您的学习)。
见图1和图2。 图1成绩表图2成绩通知单 解决思路: 1.《成绩表》和《通知单》分建立在两个工作表中。
2.《通知单》可以通过函数调用《成绩表》中每个学生之资料。 3.建立一个单元格下拉菜单供选择所有学生姓名,当选项改变时,通知单跟随改变。
而且在现有资料上增加学生数量后不受影响,从而使通知单设计达到通用之功能。 明确了思路,现在以实例具体讲解实现方法。
步骤1.定义名称 选择《成绩表》A1,点击【插入】【名称】【定义】,然后按图3方式输入信息:当前工作簿的名称处输入“姓名”(不含引号),在引用位置处输 入“=OFFSET($A$1,1,0,COUNTA(A:A)-1,)”。公式含义:通过COUNTA(A:A)-1返回A列学生数目,减1是因A列中 非空单元格数量包括首行“姓名”二字;然后利用OFFSET函数提取A列所有学生姓名。
图3定义名称 步骤2.设置数据有效性 进入《通知单》单元格A4,点击【数据】【有效性】【设置】,在有效性条件之允许处选择条件为序列,来源处输入“=姓名”,同时确保右边“提供下拉箭头”前已打勾(见图4),确定后点击单元格I4试试效果(见图5)图4设置数据有效性图5效据有效性建立之单元格下拉菜单 步骤3.建立通知单基本格式 按以下图六建立一个空白格式,以待调用成绩表之数据。图6通知单格式 步骤4.设计公式调用数据 A.选中单元格C2,输入以下公式: =VLOOKUP(I4,成绩表!A2:D1000,4,0)&" "&I4&" 同学成绩通知单" B.选中单元格D4,输入公式:=I4 C.选中单元格F4,输入以下公式: =VLOOKUP(I4,成绩表!A2:C1000,3,0) D.选中单元格H4,输入以下公式: =VLOOKUP(I4,成绩表!A2:B1000,2,0) E.选中单元格F5,输入以下公式: =VLOOKUP(I$4,成绩表!A$2:K$1000,ROW(A5),0) F.选中单元格F5,将公式向下拉至F11 此时公式设计完毕,可以选择单元格I4之下拉箭头选择不同学生姓名,可以看到《通知单》之数据有跟随变化。
后续打印时则通过下拉框打印随时打印任何学生之成绩,而不破坏原成绩表之格式。 公式解析:VLOOKUP是查找公式,有四个参数,分别为[查找值]、[数据表]、[序列数]、[匹配条件]。
查找值即需要到目标区域查找之目标数据,可以输入目标值,也可以是单元格引用; 数据表是被查找之区域,本例中数据只有10个,而引用区域输入A2:D1000是为了让成绩表中增加数据时通知单公式可以通用,不用再修改公式。若您的学生数目超过1000时可以将本引用域再相应增大,使公式能适应所有变化。
序列数是指目标值在被查找区域所在的列数,输入2,则返回目标区域第二列的值。 匹配条件一般有两个选项,0和1。
0表示精确匹配,1表示近似匹配。可以根据不同状况下选择相应的匹配条件。
结语:WPS表格的查找函数又称为引用函数,功能强大,灵活多变。用于搜索数据和格式转换有较好的功用。
查找函数VLOOKUP外还是HLOOKUP、LOOKUP、MATCH、INDIRECT、INDEX、OFFSET等等,只有灵活掌握这些函数才能让WPS表格真正发挥潜能,让很多人工查询方式转化为函数自动搜索,从而提升效率。
先便将所有成绩汇总到下列表(图1);
图1 数据整合完毕
该表中,包含如下字段:年级、班级、姓名、语文、数学、英语和总分。数据准备好了,我的工作开始了!
一、准备工作
数据是有了,可不好看。某些列太小了,数据挤在了一起,看起来不方便。没关系,调整一下即可。要调整列宽,方法有很多。以下方法能够精确地控制列的宽度:
1. 右击所需要调整的列(比如F),在弹出的菜单中选择“列宽(C)。”(图2);
图2 右键F列,选择“列宽”菜单项
2. .输入你所需要的数值后,敲“回车”或点击“确定”(图3)。
图3 输入精确的数值后回车
调整列宽的另一种更快捷的操作,就是用鼠标直接拖曳,移动鼠标到两列之间的竖线上,鼠标呈双向箭头图案,按住鼠标左键(图4),
图4 鼠标移动到两列的中间,按住左键
拖动到适当位置后释放鼠标左键。如果此时你没有拖动,而是双击,则会自动将该列设定为“最适合的列宽”。
我们可以在同时选中多列后,通过调整其中一列的列宽,一次性地对所有选中列的列宽进行调整(调整后,所有选中的列,列宽都相等)。
二、计算总分
总分的计算,应该是比较简单的。
单击总分列中,第一个要计算的单元格G3,然后移动鼠标,单击公式工具栏的“fx”按钮(图5),
图5 插入函数
如图,要对表格中每个选手按照平均分大小计算其排名.
2
如图,将鼠标移到选手1排名单元格(即L3)内,在函数栏中输入函数式“=RANK(K3,$K$3:$K$8)”,回车后就可以看到选手1的排名情况了。
解释:RANK即计算排名的函数名;
K3是要计算排名的成绩;
$K$3:$K$8是要计算排名的分数范围,加$符号是为了后续填充其他选手的排名时保持范围不变。
3
此时点击L3单元格右下角的下拉点(如图),拖动鼠标往下拖,其余选手的排名也出现了。如图。
END
方法2
首先,将鼠标移动到选手1排名的单元格(L3),再点击菜单栏上的fx图标(函数图标),此时会弹出对话框。如图。
在弹出的函数对话框中输入“rank”,点击“转到”按钮,这时在底部的函数栏中找到“rank”函数,选中后,单击对话框中的确定按钮。如图。
回到表格中会出现函数参数对话框,如图。
点击number旁边的小图标,会返回表格中。
此时单击选手1的平均分单元格(即K3单元格),对话框中会出现“K3”,此时关闭对话框,继续回到函数对话框。
解释:此步骤的目的是要选出要对其计算排名的对象,即选手1的平均分。
对到对话框,点击REF旁的小图标,回到表格界面,拖动鼠标选中K3到K8,此时关闭对话框,继续回到函数对话框。
解释:此步骤的目的是要选出要计算排名的数据范围,即选手1到选手6的平均分。
此时函数对话框中的情形如图,点击确定,关闭对话框,回到表格内,会发现选手1的排名已经出现。
此时鼠标移到选手1的排名单元格(L3),在单元格内会出现函数式“=RANK(K3,K3:K8)”将其修改为“=RANK(K3,K$3:K$8)”,拖动单元格向下填充,是其他选手的排名也计算出来。
解释,增加"$"符号的作用是为了使向下拖动填充时K3:K8不会自动变成K4:K9,这样排名的数据范围就改变了,也无法得到正确的排名。
END
注意事项
增加"$"符号的作用是为了使向下拖动填充时K3:K8不会自动变成K4:K9,这样排名的数据范围就改变了,也无法得到正确的排名。
详情请看