【原】Excel根据相同列筛选对应行列值

  最近做项目要些数据,懒得编程序写了,练练excel,于是就有了如下图的需求:


如图,F列的ID值与J列的ID值相同,当然,F列的顺序不能动,但是J列的值是排列好的了,假设J列有数据的行数是第二行到第100行。

现在,需求是:根据F列的值,选择出对应的J列的值的行元素。比如:F4的单元格的元素是“apree”,它对应的ID值是在J8单元格,

而我想把J8单元格所对应的K8,L8,M8全部都加入到G4,H4,I4。所以公式如下:

=INDEX($K$2:$K$100,(MATCH(F4,$J$2:$J$100,0)))
将这个公式写入到G4单元格即可。同理,H4单元格填写公式如下:

=INDEX($L$2:$L$100,(MATCH(F4,$J$2:$J$100,0)))

I4单元格公式如下:

=INDEX($M$2:$M$100,(MATCH(F4,$J$2:$J$100,0)))

这个公式的意义就是:match函数先从J2-J100的单元格中,找出与F4单元格的ID一样的值的位置(offset),然后index函数返回这个返回这个偏移在数组中的值。

说明:之前一点不会Excel的函数啦,公式什么的啦,这回是头一次弄。自己摸索了一下,先网上搜相关的信息,没有能够直接用的,然后自己琢磨公式,

套用原始的公式,我发现L2同$L$2是不一样的,虽然都表示L2那个单元格,但是如果把公式写完了之后,拖动鼠标左键拉动单元格子右下角的小三角往相同列拖动的时候(我不知道这个操作叫神马),

L2就会变了,变成L3或者神马的。但是如果是$L$2就不同了,相同操作的话,都是L2那个单元格,这个是我体会出来的。

posted @ 2011-03-14 14:06  dc0453  阅读(861)  评论(0)    收藏  举报