欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Office

Excel用公式转换为阿拉伯数字的方法实现按中文小写数字排序

程序员文章站 2022-03-04 19:19:04
中文小写数字,就是一二三四五六七....十,在Excel中中文小写数字会应用到很多场合,若要按中文数字排序,可以用公式或宏代码将中文小写数字转换为阿拉伯数字后再进行...

中文小写数字,就是一二三四五六七....十,在Excel中中文小写数字会应用到很多场合,若要按中文数字排序,可以用公式或宏代码将中文小写数字转换为阿拉伯数字后再进行排序。默认情况下Excel只能将中文数字当做普通汉字处理,直接排序时会按拼音的顺序,通常的处理方法是添加辅助列。下图学校名称中包含中文小写数字,要求按城市和中文数字排序。

Excel用公式转换为阿拉伯数字的方法实现按中文小写数字排序

下面以上图为例介绍如何用公式转换中文小写数字为阿拉伯数字,并以B列和C列为辅助列,在B列提取城市名称,在C列提取中文小写数字并转换。

在B2单元格输入公式:

=LEFT(A2,FIND("第",A2)-1)

在C2输入数组公式:

=MATCH(MID(SUBSTITUTE(A2,"中学",""),FIND("第",A2)+1,LEN(A2)),SUBSTITUTE(TEXT(ROW(A$1:A$82),"[dbnum1]"),"一十","十"),)

公式输入完毕按Ctrl+Shift+Enter结束。然后选择B2:C2拖动填充柄向下填充公式。

Excel用公式转换为阿拉伯数字的方法实现按中文小写数字排序

说明:首先用MID函数提取学校名称中的中文小写数字,然后用“TEXT(ROW(A$1:A$100),"[dbnum1]")”得到数组“{"一";"二";"三";"四";"五";"六";……"一百"}”,由于本例“十”至“十九”之间的数字在数组中显示为“一十”、“一十一”……“一十九”,故用SUBSTITUTE函数将“一十”替换为“十”。之后用MATCH函数查找中文小写数字的位置,即得到对应的阿拉伯数字。

LEFT函数

功能:从一个文本字符串的第一个字符开始,截取指定数目的字符。
格式:LEFT(text,num_chars)
参数:text代表要截字符的字符串;num_chars代表给定的截取数目。  
举例:假定A38单元格中保存了“我喜欢天极网”的字符串,我们在C38单元格中输入公式:=LEFT(A38,3),确认后即显示出“我喜欢”的字符。

FIND函数

功能:用于查找其他文本字符串 (within_text) 内的文本字符串 (find_text),并从 within_text 的首字符开始返回 find_text 的起始位置编号。
语法:FIND(find_text,within_text,start_num)
参数:Find_text表示要查找的文本;Within_text表示包含要查找文本的文本;Start_num是指定开始进行查找的字符。然后以B列“城市”为主要关键字,以C列“名称中的数字”为次要关键字进行排序即可得到所需的结果。

Excel用公式转换为阿拉伯数字的方法实现按中文小写数字排序

最后删除B、C两个辅助列就可以了。

以上便是为大家介绍的有关Excel如何按中文小写数字排序的方法,通过添加辅助列,然后用公式将中文小写数字转换为阿拉伯数字后再进行排序,建议大家将其掌握,以在不时之需。