输入以下代码后,我将使用以下代码查找地址并返回Sheet2上的E列:

=INDEX('Sheet2'!$A$1:$N$7755,MATCH(1,('Sheet2'!A:A=$C$4)*('Sheet2'!B:B=$I$4)*('Sheet2'!F:F=$G$4)*('Sheet2'!$C$2:$C$7755<=$B$4)*('Sheet2'!$D$2:$D$7755>=$B$4),0),5)


在Sheet2上,A是街道名称,B是邮政编码,F是城市,C是该块的最低地址,D是该块的最高地址。

A       B       C   D   E   F
1ST ST  12345   100 399 N   City1
1ST ST  12346   100 299 N   City2
1ST ST  12347   101 522 N   City3
1ST ST  12347   600 899 E   City3


但是,当我使用此选项时,搜索650 1st St,City3 12347将返回N而不是E(试图获取第5列)。

特别是公式的> =和

最佳答案

请注意INDEX/MATCH中使用的范围。 AFAIK,范围应全部相同。

有两种解决方法,请选择以下内容。

=INDEX('Sheet2'!$A$2:$N$7755,MATCH(1,('Sheet2'!A$2:A$7755=$C$4)*('Sheet2'!B$2:B$7755=$I$4)*('Sheet2'!F$2:F$7755=$G$4)*('Sheet2'!$C$2:$C$7755<=$B$4)*('Sheet2'!$D$2:$D$7755>=$B$4),0),5)


要么

=INDEX('Sheet2'!$A:$N,MATCH(1,('Sheet2'!A:A=$C$4)*('Sheet2'!B:B=$I$4)*('Sheet2'!F:F=$G$4)*('Sheet2'!$C:$C<=$B$4)*('Sheet2'!$D:$D>=$B$4),0),5)


(就个人而言,我建议不要使用完整的列引用,因为这样做(尤其是两列以上)会降低公式/工作表的速度)

10-05 21:19