论文部分内容阅读
在考试成绩分析过程中,有时遇到的问题也许并非是求个总分或平均分那样简单。比如图1所示的考试成绩表。已经知道考试号为14位,其中第7位和第8位数字是专业代码。代码与专业的对应关系如图2所示。领导的要求很简单,根据考试号中的代码,把对应的专业名称写出来放到H列。成绩表中共有一千多位学生的考试成绩,逐个填写当然不太现实,那么应该如何操作呢?
一、根据代码填写对应专业名称
利用WPS2010表格中的函数,其实这项工作也不难。首先想到的也许是IF函数,但是显然公式中的IF函数需要多层嵌套,不仅公式复杂而且嵌套层数会超过允许的最大值。本例中,CHOOSE函数可能是一个更好的选择:将鼠标定位于H2单元格,输入如下公式“=CHOOSE(MID(A2,7,2),"种植","养殖","机电","微机","建筑","财会","商贸","护理","餐旅","文秘","化工","服装")”。回车后,再选中此单元格的填充句柄向下拖动至最后一行,松开鼠标就可以得到全部对应的结果了,如图3所示。要注意的是公式中的除了专业名称之外,其余字符均需在英文半角状态下录入。
公式中“MID(A2,7,2)”是截取A2单元格字符串中从第7个字符开始的2个字符。因此会从考试号中提取到专业代码。
CHOOSE函数的用途是根据给定的索引值,从多达29个待选参数中选出相应的值或操作。其语法规则是“CHOOSE(序号,值1,值2,值3……)”。比如公式“=CHOOSE(2,"计算机","应用","基础")”返加的结果就是待选参数中的第2个“应用”。本例中利用MID函数提取到各专业代码,再利用此代码作为CHOOSE函数的中的“序号”,正好可以返回各专业名称。因此,要注意的就是CHOOSE函数中各专业名称的顺序要务必与图2所示的顺序保持一致,不能有顺序上的差错。保证了这一点,那么完成这项任务就没有任何问题了。
二、根据专业名称填写对应代码
如果已经有了专业名称,那么如何写出相对应的专业代码呢?也许您也会这么问。不过,我们已经想到这个问题,并且有了解决办法。仍以上表为例,专业名称在H列,那咱们就把专业代码放到I列吧。
将鼠标定位于I2单元格,输入如下公式“=TEXT((FIND(H2,"种植养殖机电微机建筑财会商贸护理餐旅文秘化工服装",1)+1)/2,"00")”。然后拖动该单元格的填充句柄向下拖动至最后一行。看看,出现的结果与A列中的一致吗?如图4所示。
公式中FIND函数可以返回要查找的字符串在被查找的字符串中出现的位置,默认情况下从被查找的字符串的第1个字符开始计算。比如公式“=FIND("基础","计算机应用基础")”,返回的结果是“6”。本例中考虑到所有专业的名称都是两个汉字,因此,它们在字符串“种植养殖机电微机建筑财会商贸护理餐旅文秘化工服装”中的位置加1之后再除以2,所得到的数字正是专业相应的代码。所以这个长长的字符串的顺序仍然是很关键的,不能有错误存在。
至于TEXT函数,其作用是将数值转换为按指定数字格式表示的文本。比如公式“=TEXT(6,"00")”就可以返回结果“06”。
好了,有了这两招,再遇到类似专业代码与专业名称对应的问题,就用不着那么麻烦写一大串“IF”了,直接使上这两招就可以轻松搞定了。
一、根据代码填写对应专业名称
利用WPS2010表格中的函数,其实这项工作也不难。首先想到的也许是IF函数,但是显然公式中的IF函数需要多层嵌套,不仅公式复杂而且嵌套层数会超过允许的最大值。本例中,CHOOSE函数可能是一个更好的选择:将鼠标定位于H2单元格,输入如下公式“=CHOOSE(MID(A2,7,2),"种植","养殖","机电","微机","建筑","财会","商贸","护理","餐旅","文秘","化工","服装")”。回车后,再选中此单元格的填充句柄向下拖动至最后一行,松开鼠标就可以得到全部对应的结果了,如图3所示。要注意的是公式中的除了专业名称之外,其余字符均需在英文半角状态下录入。
公式中“MID(A2,7,2)”是截取A2单元格字符串中从第7个字符开始的2个字符。因此会从考试号中提取到专业代码。
CHOOSE函数的用途是根据给定的索引值,从多达29个待选参数中选出相应的值或操作。其语法规则是“CHOOSE(序号,值1,值2,值3……)”。比如公式“=CHOOSE(2,"计算机","应用","基础")”返加的结果就是待选参数中的第2个“应用”。本例中利用MID函数提取到各专业代码,再利用此代码作为CHOOSE函数的中的“序号”,正好可以返回各专业名称。因此,要注意的就是CHOOSE函数中各专业名称的顺序要务必与图2所示的顺序保持一致,不能有顺序上的差错。保证了这一点,那么完成这项任务就没有任何问题了。
二、根据专业名称填写对应代码
如果已经有了专业名称,那么如何写出相对应的专业代码呢?也许您也会这么问。不过,我们已经想到这个问题,并且有了解决办法。仍以上表为例,专业名称在H列,那咱们就把专业代码放到I列吧。
将鼠标定位于I2单元格,输入如下公式“=TEXT((FIND(H2,"种植养殖机电微机建筑财会商贸护理餐旅文秘化工服装",1)+1)/2,"00")”。然后拖动该单元格的填充句柄向下拖动至最后一行。看看,出现的结果与A列中的一致吗?如图4所示。
公式中FIND函数可以返回要查找的字符串在被查找的字符串中出现的位置,默认情况下从被查找的字符串的第1个字符开始计算。比如公式“=FIND("基础","计算机应用基础")”,返回的结果是“6”。本例中考虑到所有专业的名称都是两个汉字,因此,它们在字符串“种植养殖机电微机建筑财会商贸护理餐旅文秘化工服装”中的位置加1之后再除以2,所得到的数字正是专业相应的代码。所以这个长长的字符串的顺序仍然是很关键的,不能有错误存在。
至于TEXT函数,其作用是将数值转换为按指定数字格式表示的文本。比如公式“=TEXT(6,"00")”就可以返回结果“06”。
好了,有了这两招,再遇到类似专业代码与专业名称对应的问题,就用不着那么麻烦写一大串“IF”了,直接使上这两招就可以轻松搞定了。