怎么在Excel中按照小数位数来筛选?

例:C列数据,有整数、含一位小数的数值、含两位小数的数值 小数位数多的数值 循环的小数数值
如:50 53.125 42.5 26.5625 28.333333
请问如何筛选出
整数
整数+1位小数
整数+2位小数
整数+3位小数 不要除不尽或小数位数太多的数值呢? 不用数据-〉筛选 用函数筛选可以实现吗?

第1个回答  推荐于2017-09-16
在D2输入公式:
=IF(INT(C2*1000)=C2*1000,C2,"")
将公式向下复制。追问

非常好用啊,不在范围内的就不显示了!
比如 只显示整数 或一位的小数 一直到。四位的小数吗??
可以告诉我公式意思吗?怎么生成的?因为有些东西而要随机应变的 老师!

追答

只显示整数:
=IF(INT(C2)=C2,C2,"")
只显示1位以内小数的:
=IF(INT(C2*10)=C2*10,C2,"")
只显示2位以内小数的:
=IF(INT(C2*100)=C2*100,C2,"")
只显示3位以内小数的:
=IF(INT(C2*1000)=C2*1000,C2,"")
只显示4位以内小数的:
=IF(INT(C2*10000)=C2*10000,C2,"")
以此类推。
INT是取某数字的整数部分,公式的意思判断扩大多少倍以后再取整是否等于原数字扩大多少倍,如果相等,表示小数位数在这个范围内,就得到这个数,否则返回空白。

本回答被提问者采纳
第2个回答  2014-10-13
D2公式:

=INDEX($C:$C,SMALL(IF(LEN($C$2:$C$10)-LEN(INT($C$2:$C$10))=0,ROW($2:$10),4^8),ROW(A1)))&""

按CTRL+SHIFT+ENTER三键结束公式录入,下拉填充

如果1位小数,=0改成=2
如果3位小数,=0改成=3追问

怎么输上不管用啊

追答

重要的东西你都忘了,
输入公式后,要按CTRL+SHIFT+ENTER三个键结束,不能直接按回车。
另个公式引用区域要扩大一点。
=INDEX(C:C,SMALL(IF(LEN(C$2:C$100)-LEN(INT(C$2:C$100))=0,ROW($2:$100),4^8),ROW(A1)))&""

本回答被网友采纳
第3个回答  2014-10-13
D1 ==IF(LEN(A1-INT(A1))=1,0,LEN(A1-INT(A1))-2)
然后按D列排序即可追问

公式不管用啊,老兄!

追答

搞错了,A改成C

D1 =IF(LEN(C1-INT(C1))=1,0,LEN(C1-INT(C1))-2)

第4个回答  2014-10-13
在D2输入=len(C2),下拉,,然后排序D列就行了
第5个回答  2021-12-13
筛选》文本筛选》结尾是》*.???。要几位小数就几个?
相似回答