Excel中如何筛选符合条件的行数据:仅选择某一类别的第一行与最后一行的行数据

有几千行这样的数据。希望大神能够帮忙
最后一列为类别名称

截图请截出行号和列标,以方便描述和书写公式。
假设数据区域为A:E列,
1、在G1输入=ROW() 然后向下填充,得到类别列的序号
2、在H:K列得到A:D对应类别的首个数据,H1输入以下公式,并向右向下填充公式
=INDEX(A:A,MATCH($G1,$E:$E,0))
3、在L:O列得到A:D对应类别的末个数据,L1输入以下公式,并向右向下填充公式
=LOOKUP(1,0/($D:$D=$G1),A:A)追问

数据区域为A到E列,行数需要根据日期每日都要更新,每个类别的数目有时也会变化,不固定为13。望大神能仔细讲解一下,如果能获得您编的程序,万分感谢

追答

你可以自己在表格中验证一下公式的正确性。

 

详见附图举例

 

追问

最后一行数据难以获取,望大神解答

追答

2003以下版本,需要将公式变换一下
=LOOKUP(1,0/($D$1:$D$2000=$G1),A$1:A$2000)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-05-21
在F1中输入
=IF(OR(COUNTIF($E$1:$E1,$E1)=1,COUNTIF($E$1:$E1,$E1)=COUNTIF($E:$E,$E1)),INDEX(A:A,SMALL(IF($E$1:$E$10000=$E1,ROW($1:$10000),65536),COUNTIF($E$1:$E1,$E1))),"")
按【组合键】确认后右拖、下拉填充。追问

该操作只能选取每个类别的第一个数据行,最后一个不显示,望大神详细讲解一下

追答

相似回答