EXCEL函数 怎么找出一列数字里 所有大于20小于29的数字(包含20和29)?

怎么根据年龄和身份证求出年龄 年龄那一列是2009-04-06这样的 我网上搜了几个 别人都说可以用 我的就不行 还有身份证的

给个示例

A列为所有数据,B列为满足条件的数据。

B1公式:

=INDEX($A$1:$A$30,SMALL(IF(($A$1:$A$30>=20)*($A$1:$A$30<=29)=0,"0",ROW($A$1:$A$30)),ROW(1:1)),)

按ctrl+shift+enter输入,下拉填充至出现#NUM!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-09-21
如果数据在A1:A100中,B1中输入
=IF(ISERR(SMALL(IF(ISNUMBER(PERCENTRANK({20,29},A$1:A$100)),A$1:A$100),ROW(A1))),"",SMALL(IF(ISNUMBER(PERCENTRANK({20,29},A$1:A$100)),A$1:A$100),ROW(A1)))
同时按下CTRL+SHIFT+ENTER输入数组公式,再用自动填充柄将公式向下复制,就行了。
第二问不太明白,根据年龄求年龄,什么意思,如果是根据已有日期和今天的差值计算年份,假设日期数据在C1中,D1中输入
=DATEDIF(C1,TODAY(),"Y")
第2个回答  2010-09-21
点最顶的框,然后数据-自动筛选,出现下拉按键后点自定义,然后设置条件大于等于20与少于等于29
第3个回答  2010-09-21
在身份证中求出生年月并计算年龄A2为身份证号,B2输入公式
=IF(ISERROR(YEAR(TODAY())-YEAR(TEXT(MID(A2,7,6+2*(LEN(A2)=18)),"#-00-00"))),"",YEAR(TODAY())-YEAR(TEXT(MID(A2,7,6+2*(LEN(A2)=18)),"#-00-00")))+DAY(1)

列出20-29岁的 在E2输入公式
=if(and(b2>20,b2<=29),"在20-29岁",""),公式下拉本回答被提问者采纳
第4个回答  2010-09-21
2007版
选中那列数据(数据列第一行最好空着) --》
点击排序和筛选 --》 点击筛选 数据列第一行出现 下拉按钮 --》
点击按钮 --》 在下拉列表中 选择 数子筛选中 最下面的 自定义筛选
相似回答