Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2178|回复: 9

[已解决]这样的怎么写函数,分类多条件判断的,返回对应的值?求解

[复制链接]
发表于 2016-2-24 12:46 | 显示全部楼层 |阅读模式
尽量不要用if嵌套,公式太长了。
最佳答案
2016-2-24 15:30
  1. =LOOKUP(B2,OFFSET($J$2,MATCH(A2,$I$3:$I$7,),,,3),$J$2:$L$2)
复制代码
表格形式稍微改动了下

新建 Microsoft Office Excel 工作表 (2).zip

7.37 KB, 下载次数: 12

发表于 2016-2-24 13:20 | 显示全部楼层
  1. =LOOKUP(B2,FIND(LEFT(A2),"一二三四五")*10+{-99,100,110},{"发育不良","中等","优秀"})
复制代码

评分

参与人数 1 +9 收起 理由
ws278106483 + 9 来学习了

查看全部评分

回复

使用道具 举报

发表于 2016-2-24 13:24 | 显示全部楼层
  1. =HLOOKUP(B2,IF({1;0},VLOOKUP(A2,$I$3:$L$7,{2,3,4},),$J$2:$L$2),2)
复制代码

评分

参与人数 1 +9 收起 理由
ws278106483 + 9 来学习了

查看全部评分

回复

使用道具 举报

发表于 2016-2-24 13:24 | 显示全部楼层
表格形式稍微改动了下,参考附件:

新建 Microsoft Office Excel 工作表 (2).rar

8.44 KB, 下载次数: 6

回复

使用道具 举报

发表于 2016-2-24 15:30 | 显示全部楼层    本楼为最佳答案   
  1. =LOOKUP(B2,OFFSET($J$2,MATCH(A2,$I$3:$I$7,),,,3),$J$2:$L$2)
复制代码
表格形式稍微改动了下

评分

参与人数 1 +9 收起 理由
ws278106483 + 9 来学习了

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2016-2-24 16:28 | 显示全部楼层
橘子红 发表于 2016-2-24 13:20

版主,如果中间没有find()+{}这个规律,能否帮忙想下办法?

新建 Microsoft Office Excel 工作表 (2)1.zip

7.98 KB, 下载次数: 1

回复

使用道具 举报

发表于 2016-2-24 16:50 | 显示全部楼层
lz你的思路有问题      即使排序的列不一样 也不会存在同一名称两个区间   a 大于1 大于2 大于3 大于4 大于5 和a大于1小于=5 是一样的表达方式吧。。
回复

使用道具 举报

 楼主| 发表于 2016-2-24 17:03 | 显示全部楼层
李建军 发表于 2016-2-24 16:50
lz你的思路有问题      即使排序的列不一样 也不会存在同一名称两个区间   a 大于1 大于2 大于3 大于4 大于 ...

=LOOKUP(B2,FIND(LEFT(A2),"一二三四五")*10+{-99,100,110},{"发育不良","中等","优秀"})
这个中间的!
FIND(LEFT(A2),"一二三四五")*10+{-99,100,110},是有一定规律的。
是两个区域,但是没有关联的。所以,我想了下。
如果中间数据有变动,公式就不能这么写了。
回复

使用道具 举报

发表于 2016-2-24 17:11 | 显示全部楼层
ws278106483 发表于 2016-2-24 17:03
=LOOKUP(B2,FIND(LEFT(A2),"一二三四五")*10+{-99,100,110},{"发育不良","中等","优秀"})
这个中间的!
...

小于10  大于等于20 大于=40   大于100
A          A                   B          C
0          20                 40         100
红色的能理解吗  红色和第一行是一样的对应关系  假设第一行和第二行都有变动的话  至少他们的区间是没有重复的  LZ能按照第三行的对应关系放置在自己的表里 劲量不要用>= < > 什么的 区间多少就是多少


回复

使用道具 举报

 楼主| 发表于 2016-2-24 17:25 | 显示全部楼层
李建军 发表于 2016-2-24 17:11
小于10  大于等于20 大于=40   大于100
A          A                   B          C
0          20   ...

学委你的公式没有问题
=LOOKUP(B2,FIND(LEFT(A2),"一二三四五")*10+{-99,100,110},{"发育不良","中等","优秀"})
用这个思路写6楼的数据,怎么改动?FIND(LEFT(A2),"一二三四五")*10+{-99,100,110}怎么构造?在6楼的数据。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-19 02:33 , Processed in 0.487640 second(s), 17 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表