历史版本1 :跨sheet数据筛选和联动 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
1.问题描述编辑
在进行多sheet报表设计的时候,两个sheet里面都用到了扩展数据集,如何从一个sheet里面获取另一个sheet里面对应的数据的值呢,如下:
sheet1 sheet2
如果想从sheet1获取sheet2中对应销售员的销量值,直接在sheet1输入sheet2!B2,会出现下面的情况:
这显然不是我们想要的。
2.解决思路编辑
先将关联的值一同获取过来,再通过关联值去筛选需要的数据,如上,sheet1和sheet2关联的值是A2中的销售员。
3.解决步骤编辑
1)获取另外个sheet中的关联值和目标值:'sheet2'!A2+'sheet2'!B2
注意,这里的+号不能用CONCATENATE( )来代替
2)利用GREPARRAY( )函数来筛选对应的数据:GREPARRAY(上一步结果, left(item, len(A2)) = A2)
这里的过滤条件是以当前sheet中的关联值的长度去截取获取过来的每一项数据,如果与当前sheet中关联值一致,则保留。
3)从上一步的结果中去除当前sheet中的关联值,即将关联值替换为空:replace(上一步结果, A2, "")
4)综合起来公式就是:REPLACE(GREPARRAY('sheet2'!A2+'sheet2'!B2, LEFT(item,LEN(A2))=A2),A2,"")