将英文的基数词转换成序数词是一个比较复杂的问题。因为它没有一个十分固定的模式:大多数的数字在变成序数词都是使用的“th”后缀,但大凡是以“1”、“2”、“3”结尾的数字却分别是以“st”、“nd”和“rd”结尾的。而且,“11”、“12”、“13”这3个数字又不一样,它们却仍然是以“th”结尾的。因此,实现起来似乎很复杂。其实,只要我们理清思路,找准函数,只须编写一个公式,就可轻松转换了。不信,请看:“=A2&IF(OR(VALUE(RIGHT(A2,2))={11,12,13}),″th″,IF(OR(VALUE(RIGHT(A2))={1,2,3,},CHOOSE(RIGHT(A2),″st″,″nd″,″rd″),″th″))”。该公式尽管一长串,不过含义却很明确:①如果数字是以“11”、“12”、“13”结尾的,则加上“th”后缀;②如果第1原则无效,则检查最后一个数字,以“1”结尾使用“st”、以“2”结尾使用“nd”、以“3”结尾使用“rd”;③如果第1、2原则都无效,那么就用“th”。因此,基数词和序数词的转换实现得如此轻松和快捷。
和财务打过交道的人都知道,在账面填充时有一种约定俗成的“安全填写法”,那就是将金额中的空位补齐,或者在款项数据的前面加上“$”之类的符号。其实,在Excel中也有类似的输入方法,那就是“REPT”函数。它的基本格式是“=REPT(“特殊符号”,填充位数)”。
比如,我们要在中A2单元格里的数字结尾处用“#”号填充至16位,就只须将公式改为“=(A2&REPT(″#″,16-LEN(A2)))”即可;如果我们要将A3单元格中的数字从左侧用“#”号填充至16位,就要改为“=REPT(″#″,16-LEN(A3)))&A3”;另外,如果我们想用“#”号将A4中的数值从两侧填充,则需要改为“=REPT(″#″,8-LEN(A4)/2)&A4&REPT(″#″)8-LEN(A4)/2)”;如果你还嫌不够专业,要在A5单元格数字的顶头加上“$”符号的话,那就改为:“=(TEXT(A5,″$#,##0.00″(&REPT(″#″,16-LEN(TEXT(A5,″$#,##0.00″))))”,一定能满足你的要求。
二十三、创建文本直方图
除了重复输入之外,“REPT”函数另一项衍生应用就是可以直接在工作表中创建由纯文本组成的直方图。它的原理也很简单,就是利用特殊符号的智能重复,按照指定单元格中的计算结果表现出长短不一的比较效果。
比如我们首先制作一张年度收支平衡表,然后将“E列”作为直方图中“预算内”月份的显示区,将“G列”则作为直方图中“超预算”的显示区。然后根据表中已有结果“D列”的数值,用“Wingdings”字体的“N”字符表现出来。具体步骤如下:
在E3单元格中写入公式“=IF(D3<0,REPT(″n″,-ROUND(D3*100,0)),″″)”,然后选中它并拖动“填充柄”,使E列中所有行都能一一对应D列中的结果;接着在G3单元格中写入公式“=IF(D3>0,REPT(″n″,ROUND(D3*100,0)),″″)”,也拖动填充柄至G14。我们看到,一个没有动用Excel图表功能的纯文本直方图已展现眼前,方便直观,简单明了
二十四、计算单元格中的总字数
有时候,我们可能对某个单元格中字符的数量感兴趣,需要计算单元格中的总字数。要解决这个问题,除了利用到“SUBSTITUTE”函数的虚拟计算外,还要动用“TRIM”函数来删除空格。比如现在A1单元格中输入有“how many words?”字样,那么我们就可以用如下的表达式来帮忙:
“=IF(LEN(A1)=0,0,LEN(TRIM(A1))-LEN(SUBSTITUTE(TRIM(A1),″,″,″″))+1)”
该式的含义是先用“SUBSTITUTE”函数创建一个新字符串,并且利用“TRIM”函数删除其中字符间的空格,然后计算此字符串和原字符串的数位差,从而得出“空格”的数量,最后将空格数+1,就得出单元格中字符的数量了。
二十五、关于欧元的转换
这是Excel 2002中的新工具。如果你在安装Excel 2002时选择的是默认方式,那么很可能不能在“工具”菜单中找到它。不过,我们可以先选择“工具”菜单中的“加载宏”,然后在弹出窗口中勾选“欧元工具”选项,“确定”后Excel 2002就会自行安装了。
完成后我们再次打开“工具”菜单,单击“欧元转换”,一个独立的专门用于欧元和欧盟成员国货币转换的窗口就出现了。与Excel的其他函数窗口一样,我们可以通过鼠标设置货币转换的“源区域”和“目标区域”,然后再选择转换前后的不同币种即可。所示的就是“100欧元”分别转换成欧盟成员国其他货币的比价一览表。当然,为了使欧元的显示更显专业,我们还可以点击Excel工具栏上的“欧元”按钮,这样所有转换后的货币数值都是欧元的样式了。
二十六、给表格做个超级搜索引擎 我们知道,Excel表格和Word中的表格最大的不同就是Excel是将填入表格中的所有内容(包括静态文本)都纳入了数据库的范畴之内。我们可以利用“函数查询”,对目标数据进行精确定位,就像网页中的搜索引擎一样。
比如在所示的表格中,从A1到F7的单元格中输入了多名同学的各科成绩。而在A8到A13的单元格中我们则建立了一个“函数查询”区域。我们的设想是,当我们在“输入学生姓名”右边的单元格,也就是C8格中输入任何一个同学的名字后,其下方的单元格中就会自动显示出该学生的各科成绩。具体实现的方法如下:
将光标定位到C9单元格中,然后单击“插入”之“函数”选项。在如图18弹出的窗口中,选择 “VLOOKUP” 函数,点“确定”。在随即弹出的“函数参数”窗口中我们设置“Lookup_value”(指需要在数据表首列中搜索的值)为“C8”(即搜索我们在C8单元格中填入的人名);“Table_array”(指数据搜索的范围)为“A2∶B6”(即在所有学生的“语文”成绩中搜索);“Col_vindex_num”(指要搜索的数值在表格中的序列号)为“2”(即数值在第2列);“Range_lookup”(指是否需要精确匹配)为“FALSE”(表明不是。如果是,就为“TURE”)。设定完毕按“确定”。
此时回到表格,单击C9单元格,我们看到“fx”区域中显示的命令行为“=VLOOKUP(C8,A2∶B6,2,FALSE)”。复制该命令行,在C10、C11、C12、C13单元格中分别输入:“=VLOOKUP(C8,A2∶C6,3,FALSE)”;“=VLOOKUP(C8,A2∶D6,4,FALSE)”;“=VLOOKUP(C8,A2∶E6,5,FALSE)”;“=VLOOKUP(C8,A2∶F6,6,FALSE)”(其参数意义同C9中一样,不再赘述)。
接下来,我们就来检验“VLOOKUP”函数的功效。试着在“C8”单元格中输入某个学生名,比如“赵耀”,回车之下我们会发现,其下方每一科目的单元格中就自动显示出该生的入学成绩了。
二十七、Excel工作表大纲的建立
和Word的大纲视图一样,Excel这个功能主要用于处理特别大的工作表时,难以将关键条目显示在同一屏上的问题。如果在一张表格上名目繁多,但数据类型却又有一定的可比性,那么我们完全可以先用鼠标选择数据区域,然后点击“数据”菜单的“分类汇总”选项。并在弹出菜单的“选定汇总项”区域选择你要汇总数据的类别。最后,如图19所示,现在的表格不是就小了许多吗?当然,如果你还想查看明细的话,单击表格左侧的“+”按钮即可。
二十八、插入“图示”
尽管有14大类50多种“图表”样式给Excel撑着腰,但对于纷繁复杂的数据关系,常规的图表表示方法仍显得枯燥和缺乏想象力。因此在最新版本Excel 2002中加入了“图示”的功能。虽然在“插入”菜单的“图示”窗口中只有区区6种样式,但对于说明数据之间的结构却起到了“四两拨千斤”的效果。比如要显示数据的层次关系可以选择“组织结构图”;而要表达资金的流通过程则可以选择“循环图”;当然,要说明各种数据的交叉重叠性可以选择“维恩图”。你看,如图20所示的维恩图多么漂亮。而且你还可以右击该图示,调出“图示”工具栏。随心所欲地设置“图示样式库”甚至还可以多添加几个圆环。 |