如何在excel中筛选或者挑出一列数据中相同的数字的下一个数以及之前的三个数?

比如
2
3
7
2
9
1
8
5
2
2
比如5这个数,我想直接选出9 1 8 5 2,怎么做?求高手
就是选出数列中的x x x 5 x这种形式,还有一种形式,就是 x x 8 5 x 这种的。8和5 都是可以换成其他数的。数列有1000多项。麻烦高手解答

=indirect("A"&match(5,a:a,0)-3&":A"&match(5,a:a,0)+1)
数组公式,就得到你要的5个数
或者在你要得到你例子中的9的单元格输入公式
=INDIRECT("A"&MATCH(5,A:A,0)+(ROW(A1)-4))
下拉5个单元格

如果你要得到的是在一个单元格中5个数
=INDIRECT("A"&MATCH(5,A:A,0)-3)&INDIRECT("A"&MATCH(5,A:A,0)-2)&INDIRECT("A"&MATCH(5,A:A,0)-1)&INDIRECT("A"&MATCH(5,A:A,0))&INDIRECT("A"&MATCH(5,A:A,0)+1)追问

=indirect("A"&match(5,a:a,0)-3&":A"&match(5,a:a,0)+1) 这个公式只适用于我给的例子,但是换成别的数列,就变成乱码,比如我想选择x x x 2 x 或者x x x 3 x 这种形式,我把公式里的5 换成2或3或其他值,就不好使了。是什么原因?,三个公式都用过了,都不行。 数列有1000多项

追答

你得对应改成你的列,包括“A”也可改成你的列标,
适用于你给你例子就适用其他,只要你的例子跟你的实际数据是一样的形式即可。

追问

9 #VALUE!
2 #VALUE!
1 #VALUE!
3 3
2 2
3 3
5 5
5 5
3 #VALUE!
2 #VALUE!
1 #VALUE!
1 #VALUE!
5 #VALUE!
6 #VALUE!
5 #VALUE!
2 #VALUE!
6 #VALUE!
5 #VALUE!
3 #VALUE!
4 #VALUE!
2 #VALUE!
9 #VALUE!

之能用到给的例子那部分,其他的数都不行,怎么回事?

追答

你是这样用的呀??B1公式
=IF(ROW()<4,OFFSET(A1,-ROW()+1,,ROW()+1,1),OFFSET(A1,-3,,5,1))

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-02-22
例上 :a1=2,.... ,a8=5,.............
b1= if ( isnumber(match (5,a1:a8,0) ), index ( a1:a18, match (5,a1:a8,0) ), "") 即8
b2=if (b1>0, INDIRECT("a"&(b1-3)) &" "& INDIRECT("a"&(b1-2) &" "& INDIRECT("a"&(b1-1) &" "& INDIRECT("a"&b1) &" "& INDIRECT("a"&(b1+1),"") 即 9 1 8 5 2追问

只是个例子,这个数列1000多项,有没有办法 直接输入公式,下拉,就能得出结果的?

相似回答