Excel中的lookup命令,如题B2=LOOKUP(A1,{"大便器","小便器","污水盆"},{1,2,3})

返回的结果是,如果A1是大便器 那么B2就为1,A1是小便器 那么B2就为2,但是A1是污水盆,B2却是1。请问我这个函数哪里不对呢?
2026年09月22日 22:28
有5个网友回答
网友(1):

3、4楼正解
=LOOKUP(A1,{"大便器","污水盆","小便器"},{1,3,2})
数组中的值必须以升序排列:...,-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE。否则,LOOKUP 无法返回正确的值。大写文本和小写文本是等同的。(excel帮助信息)
如果类别不多的话用if函数嵌套也不错,避免出错

网友(2):

这个用IF就好了
不需要LOOKUP 这个是模糊查找函数,按查找排序找到最相近的一个
精确查找要用VLOOKUP 查找到一模一样的那个
B1=IF(A1="大便器","1",IF(A1="小便器","2",IF(A1="污水盆","3"),FALSE)

网友(3):

大便器
污水盆
小便器
原因在于 LOOKUP 函数 的索引值要升序排列,才可以返回正确的对应值,

=LOOKUP(A1,{"大便器","污水盆","小便器"},{1,3,2})

网友(4):

=LOOKUP(A1,{"大便器","污水盆","小便器"},{1,3,2})
lookup()函数要按排序后的字段查找。

网友(5):

=VLOOKUP(A1,{"大便器",1;"小便器",2;"污水盆",3},2,0)
用文本查找数字,请用VLOOKUP