使用数组形式CHOOSE函数配合HLOOKUP失效问题求助
修复HLOOKUP与CHOOSE数组组合的问题
问题出在你给CHOOSE的数组参数格式上!Excel里的数组逗号(,)代表横向元素,分号(;)代表纵向元素,而HLOOKUP需要的是多行的纵向堆叠区域,不是横向拼接的区域。
你的VLOOKUP公式用{1,2}是对的——因为VLOOKUP需要多列的横向拼接,把两个单列区域拼成2列的查找范围。但HLOOKUP需要的是多行的纵向堆叠,所以得把数组参数改成纵向的{1;2}。
修复后的公式:
=HLOOKUP(1;CHOOSE({1;2};A1:C1;A3:C3);2;FALSE)
为什么原来的公式不行?
你原来用{1,2}时,CHOOSE会把A1:C1和A3:C3这两个行区域横向拼接,变成一行6列的区域(A1,B1,C1,A3,B3,C3)。这时候HLOOKUP要找第2行,但这个区域只有1行,自然找不到结果。
改成{1;2}后,CHOOSE会把两个行区域纵向堆叠,变成一个2行3列的区域:
- 第1行:A1,B1,C1
- 第2行:A3,B3,C3
这样HLOOKUP就能正常在第一行查找1,并返回第2行对应的匹配值了。
内容的提问来源于stack exchange,提问作者Pierre44
相关产品推荐
相关产品推荐

