抱歉又来问小白的问题。VLOOKUP这个函数只能对应一排,不能对应区域?
- death5343我目前想要实现一个功能,但是失败了。查找了INDEX之类的发现也不对。
材料1 材料2 材料3
订单1 A B C
订单2 A C F
以上是基础数据
希望能用VLOOKUP后
材料 生产对像1 对象2 对象3
A 订单1 订单2 N/A
B 订单1 N/A N/A
C 订单1 订单2 N/A
F 订单2 N/A N/A
问题是对比好像只能对比一竖列,不能对比一个区域,然后返回我想要的值。
是我的想法不对么? - QQ254035447VLOOKUP只能匹配列里的数据
你要达到你想要的表2的方法可以使用数据透视表来实现 - death5343
这个常用表,不是总结表。随时填数据的,不可能用透视表来实现。
- 爱骑车的胖子透视表可以刷新的
- vanyexcel用的不够好,但我知道肯定不是用vlookup。
vlookup函数的col index num只能是匹配数据后的同一行的某列数据,你所要求的完全不是这么回事,所以放弃vlookup吧。 - death5343没用的,透视表只能弄数值,不可能弄文本的。
- handsomeken我觉得楼主不如弄个简单的excel上传然后说说要求……
- death5343好像不支持上传啊。
只能传个图。 - 华莱士常用excel的话
楼主花点时间学学vba吧
光用函数是不够的 - 哇呀呀这个东西我最近正好做过,实在不想动vba,用了几个函数搞定了
首先申明,这个办法挺sb的,求更简单的解决方案
首先,需要函数 MATCH 来查找A在材料1列中的位置,返回2(在这个例子中,下同);有个格子记录这个2;另有个格子记录2+1=3
然后需要函数 INDIRECT 将3读出来用在第二个MATCH 中,让match从材料1列的第3个数字开始找起,返回1;1+2=3(这个3和上面那个2就是在材料1列中有A的行数);
然后index这几个行数,就能得到“订单1”和“订单2” - death5343MATCH和INDEX我都试了,没头绪,能直接复制一个公式和图表给我么。
- handsomeken因为不清楚这个数据表最终会有多大以及你需要的效果和功能,就大概写了个给你参考下。如果你的数据量和查找的东西比较固定而且就这几个的话,稍微改改就能用。
不过还是建议弄弄数组啥的,这样结构更清晰,也不会有太多没用的中间变量。
[本帖最后由 handsomeken 于 2015-3-25 17:50 编辑]