Excel中如何选出满足三个条件的单元格?
例子如图,日期还在往下延伸,我要怎么选出比如A班张三一段时间内的所有成绩 展开
给你做了一个类似软件的筛选功能,你所需的操作只是从下拉菜单中选择你要查寻的条件即可,效果如图一。
具体实现过程如下:
1、界面设计:
(1)、F:O列设为居中对齐,F列和L列设为日期型。
(2)、输入文字:F1为“开始日期”,F2为“结束日期”,H1为“班级”,H2为“姓名”,F3为“日期”,G3为“班级”,H3为“姓名”,I3为“成绩”,L1为“班级”,L2为“姓名”。
(3)、在4个单元格上输入公式,全是数组公式,输完按下CTRL+SHIFT+ENTER生成数组公式。
F4公式:=IFERROR(INDEX(A:A,SMALL(IF((INDIRECT("A2:A"&COUNTA($A:$A)-1)>=$G$1)*(INDIRECT("A2:A"&COUNTA($A:$A)-1)<=$G$2)*(INDIRECT("B2:B"&COUNTA($A:$A)-1)=$I$1)*(INDIRECT("C2:C"&COUNTA($A:$A)-1)=$I$2),ROW(INDIRECT("A2:A"&COUNTA($A:$A)-1)),""),ROW(A1))),"")
M1公式:=IFERROR(INDEX(INDIRECT("B2:B"&COUNTA($B:$B)-1),MATCH(,COUNTIF($L1:L1,INDIRECT("B2:B"&COUNTA($B:$B)-1)),)),"")
M2公式:=IFERROR(INDEX(INDIRECT("C2:C"&COUNTA($C:$C)-1),MATCH(,(INDIRECT("B2:B"&COUNTA($B:$B)-1)<>M$1)+COUNTIF(M$1:M1,INDIRECT("C2:C"&COUNTA($C:$C)-1)),))&"","")
L3公式:=IFERROR(INDEX(INDIRECT("A2:A"&COUNTA(A:A)-1),MATCH(,COUNTIF(L$2:L2,INDIRECT("A2:A"&COUNTA(A:A)-1)),)),"")
(4)、F4公式右拖复制至I4,再下拖复制一定行数;M1公式右拖复制一定行数;M2公式右拖,再下拖;L3公式,下拖。
效果如图二:
2、设计下拉菜单
选择G1,点菜单上的“数据”中的“数据有效性”,选序列,来源输入:=OFFSET(L3,,,COUNT(L:L),),设置界面如图三:
继续设置G2,I1,I2这三格的数据有效性,来源内容设置如下:
G2:=OFFSET(L3,,,COUNT(L:L),)
I1:=OFFSET($M$1,,,1,14-COUNTBLANK(M1:Z1))
I2:=OFFSET(L2,,MATCH(I1,M1:Z1,),COUNTA($A:$A)-COUNTBLANK(OFFSET(INDIRECT("M2:M"&COUNTA($A:$A)),,MATCH($I$1,M1:Z1,)-1))-1,)
3、至此,所有设计完成,此时你可以任意添加A:D列的数据,查寻界面会自动更新,你想更改查寻的日期,姓名或班级等,从下拉菜单选取即可。
具体的要按你的实际表格确定方法。
在问题中更新了具体例子和图片,可以帮忙解答一下吗,谢谢
2022-01-04 · 知道合伙人软件行家