Simon.hu 发表于 2017-7-7 14:06:52

看完必恍然大悟的活字格内幕:四,表格“按需加载”使用VLOOKUP()函数不起作用的问题

本帖最后由 Simon.hu 于 2017-8-8 12:08 编辑

(PS:如果您在使用活字格的时候遇到了这篇贴子里的问题,那么恭喜你,你已经是一个活字格的熟练工了。)
VLOOKUP函数,因为可以很轻松的实现联动查询的效果,颇受Excel用户的青睐。而连动效果会大大的提高产品的亲和力和易用性,尤其对于web应用系统更是如此。“活字格”有类似Excel的设计体验,可以快速完成web应用的开发和搭建,所以连动的效果必不可少,而“活字格”如何制作连动效果的方法至少有4种(如何连动:http://gcdn.gcpowertools.com.cn/ ... 7024&extra=page%3D1),
最让excel用户喜欢的办法当然还是一个表格+VLOOKUP公式。
什么是连动效果? 这个你要是不明白的话,这个问题描述的指的是连动效果(http://gcdn.gcpowertools.com.cn/ ... hlight=%B9%D8%C1%AA)
明白了,我们要处理的问题和方法,现在我们切入正题。当下我的工程中已经有一个人员信息表,如下图所示:

另外这里有一个订单的页面,我们的需求是这样的,每当我选择一个人员姓名的时候,我希望他的其他信息可以自动加载出来,方便我的确认信息。如下图所示:

如何做到呢?很容易就会想到,VLOOKUP的办法去搞。于是我们有了这个办法

具体问题:
你会发现选择前面数据的时候,没有问题效果很perfect,

但是当你选择下拉框后面一些数据的时候,数据莫名其妙的出错了

很奇怪,我的数据明明有怎么可能找不到???
然后你为了确认,在右边的表格里,通过下拉确认数据,突然数据有出现了? 这一切难道是幻觉?

问题原因:
答案肯定不是幻觉,其实原因是这样的,活字格为了处理大数据,内部做了很多优化的方案,比如说活字格认为,一张数据表里可能会有很多数据(比如上次一个客户的70000000(7000万行)数据,在活字格里面是展示其实是秒开的,很惊艳吧?),但是任何一个人的屏幕或者视野里面能放到的数据都是有限的,那么多余的数据其实显示,或者加载出来根本没有必要,活字格只会加载你的需要的数据,但是我们肯定是可以定制这个的,设置的地方其实,就在

作用其实就是,在一个表里,我们每次都只是加载500条等到你下拉滚动到最底下的时候,在加载100条,如此每次到底的时候,都在加载100条,这样就会体验流畅。
说道这里你是不是已经明白了刚才的问题的原因?其实就是因为后面的的数据还没有加载出来呢,所以VLOOKUP公式根本不能找到,但是当你一直下拉数据加载上来以后就行突然的可以被VLOOKUP函数找到了,因此数据突然就出现了。

问题解决:知道了问题的原因,那么我们应该如何解决呢?
这里的办法各有利弊,请大家酌情选择。
第一,对症下药,既然会这样那我就设置每次加载的数据调整到最大一开始就展示99999999(接近1亿),

并且,我们在在把表里的数据去重,无论你做的是什么系统一亿条互相不重复的数据都可以满足你的要求了,怎么做到去重呢,当然是跟我们的统计字段了,做法如下图
第二,使用http://gcdn.gcpowertools.com.cn/ ... 7024&extra=page%3D1帖子里另外3种办法。



页: [1]
查看完整版本: 看完必恍然大悟的活字格内幕:四,表格“按需加载”使用VLOOKUP()函数不起作用的问题