Office中国论坛/Access中国论坛

标题: 请问excel里排序问题?谢谢! [打印本页]

作者: bluesnailan    时间: 2006-6-11 20:53
标题: 请问excel里排序问题?谢谢!
数列1,2,1-1,11-1,3,2-2,100-1,110-1,每次排序结果都不对,都是1,100-1,1-1,11-1,110-1,2,2-2,3



请问怎样才能排出1,1-1,2,2-2,3,11-1,100-1,110-1的结果?



谢谢![em01]
作者: alex_yao    时间: 2006-6-12 22:09
关于这个问题我详细讲讲,对于排序,Excel分为两种方式,一个是数字一个是文字,对于数字是按照数字的大小来排序的,对于文字一般是按照字母的ASC大小排序的!

你的数据存在两种类型,Excel排序时不能确定按照其固定类型排序,它最后的结果是按照文字方式排的!

要解决这个问题,可以将之都转化为数字。转化的方式可以考虑以下的方法(这是我的方法)

新建两列,第一列存放"-"前面的数据,第二列存放"-"后面的数据(假设你所有的原数据存放在A列,并且有标题)

第一列(B列)的公式为=LEFT(A2,IF(ISERROR(FIND("-",A2,1)),LEN(A2),FIND("-",A2,1)-1))

第二列(C列)的公式为==IF(ISERROR(FIND("-",A2,1)),"0",RIGHT(A2,LEN(A2)-LEN(B2)-1))

然后可以对第一列和第二列一起排序就可以得到你需要的结果

附件为我编辑的结果[attach]18458[/attach]


[此贴子已经被作者于2006-6-12 14:13:29编辑过]


作者: bluesnailan    时间: 2006-6-14 23:16
标题: 哈哈,谢谢!
先谢谢,再下载下来仔细看看。[em09]
作者: 830101    时间: 2006-6-16 20:22
路过,学习一下,下载下来认真看看。
作者: zglnjzltlizhen    时间: 2006-6-20 22:14
学习学习
作者: 雪若    时间: 2006-6-26 17:28
真是高手云集呀,看来我还得好好跟各位学学了
作者: cxs1122    时间: 2006-8-23 05:45
直接用EXCEL里的“数据”-“分列”就可以把数据分成两列了。
作者: lovenon    时间: 2006-8-31 19:20
路过,学习一下,
作者: leihao1979    时间: 2006-9-1 23:29
路过,学习一下,真的不错!




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3