excel 多列查询后返回

来源:百度知道 编辑:UC知道 时间:2024/06/20 18:31:30
现在有以下四列数,
41,42,43,44是表头,
1到33是数组内容,
要求假定F1是个变量,要求查询,如果F1在1到9返回41, 如果F1在10到17返回42, 要求不得使用if语句,因为实际操作中数组的内容是变化的,并且这是最简单的一组,有12组以上内容,而我用的2003 if只能7层,所以别用if语句
所以要求用什么 vlookup 等语句,一次性能根据F1的值返回 41,42,43或44.

41 42 43 44
1 10 18 26
2 11 19 27
3 12 20 28
4 13 21 29
5 14 22 30
6 15 23 31
7 16 24 32
8 17 25 33
9
要求用一行公式 不得使用任何IF 函数

假设你的数据在A1:D10

在G1输入公式

=INDEX(A1:D1,MIN(IF(A2:D10=F1,COLUMN(A2:D10))))

数组公式,按CTRL+SHIFT+回车三键确定

你可以试试在F1中随便输入1到33,看看效果

我试了,出现结果为 #REF! 这是什么意思,

请wodaxiaopengyo帮忙一下,
我有一次试你的公式成功,别的时候都出现这个 #REF!
我不知道什么原因。

假设你的数据在A1:D10

在G1输入公式

=INDEX(A1:D1,MIN(IF(A2:D10=F1,COLUMN(A2:D10))))

数组公式,按CTRL+SHIFT+回车三键确定

你可以试试在F1中随便输入1到33,看看效果

我是假设你的数据在A1:D10
具体的公式中数据区域引用要根据你的实际区域更改

学习了
楼主输入后 记得“按CTRL+SHIFT+回车三键确定”
我测试的没有问题

把表的结构给我,我用VBA帮你做吧~