[Excel]如何使Vlookup由右往左找? 或使Hlookup由下往上找?

Vlookup和Hlookup函數常用於查找資料,其中Vlookup顧名思義用於資料水平查找,而Hlookup則用於垂直查找。同時Vlookup的初始設置為由左往右尋找符合條件的資料,Hlookup的初始設置則是由上往下尋找。

然而,有時候受制於數據排版,需要由右往左或是下往上尋找,該如何修改函數呢?

以上述結果為例,若有利用8找到對應的C,可用下列語法。

VLOOKUP(E3,IF({1,0},$C$3:$C$47,$B$3:$B$7),2,FALSE)

其中IF({1,0},$C$3:$C$47,$B$3:$B$7),是一個數組矩陣,用意是將$C$3:$C$47和$B$3:$B$7兩個數列形成一個數組矩陣。當在$C$3:$C$47找到符合E3的8,則在$B$3:$B$7取出對應的C。

同樣地,Hlookup也是利用這個原理達到由下往上尋找的,只不過數組矩陣需要以;來區隔,類似語法如下。

HLOOKUP(E57,IF({1;0},$B57:$D57,$B$56:$D$56),2,FALSE)

### 四大 Lookup 函数详解 #### VLOOKUP 函数 `VLOOKUP` 是一种垂直查函数,用于在一个表格数组的第一列中定位指定的值,并返回该行中其他列的数据。 语法如下: ```excel =VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup]) ``` - `lookup_value`: 要查的值。 - `table_array`: 查范围。 - `col_index_num`: 返回值所在的列号。 - `[range_lookup]`: 是否近似匹配,默认为 TRUE (近似匹配),FALSE 表示精确匹配[^1]。 #### HLOOKUP 函数 `HLOOKUP` 类似于 `VLOOKUP`,但是它执行水平方向上的查操作。即在表格区域的第一行搜索特定值并返回同一列中指定行处的单元格值。 语法结构相似: ```excel =HLOOKUP(lookup_value, table_array, row_index_num, [range_lookup]) ``` 这里不再赘述参数含义,因为它们与 `VLOOKUP` 中对应位置的意义相同[^2]。 #### LOOKUP 函数 此版本有两种形式——向量和数组: 对于 **向量形式** 的 `LOOKUP`, ```excel =LOOKUP(lookup_value, lookup_vector, [result_vector]) ``` 其中 `lookup_vector` 需要按升序排列;如果没有提供 `result_vector`,则会从 `lookup_vector` 自身取回结果。 而 **数组形式** 则更接近于 `VLOOKUP/HLOOKUP`, ```excel =LOOKUP(row_index_num, array) ``` 这里的 `array` 可以看作是一个二维表,类似于 `VLOOKUP` 者 `HLOOKUP` 使用的 `table_array`[^3]。 #### INDEX/MATCH 组合 虽然严格意义上这不是单一的 “Lookup” 函数,但在实际应用中经常被用来替代传统的 `VLOOKUP` 方法来完成更加灵活高效的查任务。通过组合这两个功能强大的工具可以实现双向甚至多维索引。 具体来说就是利用 `INDEX` 定位目标行列交界点的位置,再由 `MATCH` 提供相应的坐标信息作为输入给前者。这种方式不仅支持反向引用(往左),而且能够处理更为复杂的场景比如跨工作簿链接等。 例子展示如何结合两者使用: ```excel =INDEX(return_range,MATCH(lookup_value,lookup_range,0)) ``` 此处 `return_range` 应当指向希望从中提取数据的那一整列者一整行,而 `lookup_range` 包含待查的关键字列表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值