在用Excel作数据分析时,为了不比较Low地采用复制数据,利用了一下Excel的Lookup函数,可是发现其存在有些能够准确找到,有些找错甚至找不到的问题,问题排查过程及解决方法如下:
1. 希望效果
希望将下表左侧(蓝色区域)北京各区人口比例,按照右侧(绿色区域)的区县顺序进行组织。
2. 存在问题
在D2中输入公式:
通过拖拉方式复制到其他单元格后,发现并没有完全匹配,如下表:
表中红字是正确的,橙底黑字是错误的,蓝底为没有找到。
3. 解决办法
为什么会出现这种情况呢,查了一下Excel帮助,要求被查找区必须按照升序排列,具体说明见下图:
将查找区域排序,发现问题没有了,具体见下表:
实际原因是Lookup函数采用的二叉树的查找方式,如果不排序,其运行机制将发生偏差,产生上述问题。