索引和匹配各种值

时间:2016-01-11 14:19:14

标签: excel excel-formula

我在几列中有一堆数据,但基本上是:

束#1(A列,B列):

CHR     POS
1     126234
3     5555555
3     9999999
9     3700000

束#2(E,F,G栏):

CHR     POS     INDEX
1     1129410     1
2     4500000     2
3     5555155     3
3     9997999     4
7     3700000     5

我想在束#1中添加一列,这样如果两个束的CHR列相同,并且#2的POS列在#1中的POS的+/- 500范围内,则复制索引束#2。

像这样(A,B,C栏):

CHR     POS     NEW_COLUMN
1     126234     #N/A
3     5555555     3
3     9999999     #N/A
9     3700000     #N/A

我得到了C

中两列的完全匹配
{=INDEX(E:G,match(1,(E:E=A1)*(F:F=B1),0),3)}`

非常感谢将范围条件纳入比赛的一些帮助。

1 个答案:

答案 0 :(得分:1)

较新的AGGREGATE¹ function可快速处理多种情况。在C2中,

=IFERROR(INDEX(G$1:G$9, AGGREGATE(15, 6, ROW($1:$9)/((E$1:E$9=A2)*(F$1:F$9<=B2+500)*(F$1:F$9>=B2-500)), 1)), "no match")

根据需要填写。

aggregate_multi_plus_minus

¹ Excel 2010引入了AGGREGATE function。早期版本不提供。