相关疑难解决方法(0)

如何针对高搜索次数优化vlookup?(VLOOKUP的替代品)

我正在寻找vlookup的替代品,在感兴趣的环境中提高性能.

上下文如下:

  • 我有一个{key; data}数据集很大(约100'000条记录)
  • 我想对数据集执行大量的VLOOKUP操作(典型的用途是重新排序整个数据集)
  • 我的数据集没有重复的密钥
  • 我只寻找完全匹配(最后一个参数VLOOKUP是FALSE)

一个架构来解释:

参考表:( "sheet1")

        A           B
     1
     2  key1        data1
     3  key2        data2
     4  key3        data3
   ...  ...         ...
 99999  key99998    data99998
100000  key99999    data99999
100001  key100000   data100000
100002
Run Code Online (Sandbox Code Playgroud)

查找表:

        A           B
     1
     2  key51359    =VLOOKUP(A2;sheet1!$A$2:$B$100001;2;FALSE)
     3  key41232    =VLOOKUP(A3;sheet1!$A$2:$B$100001;2;FALSE)
     4  key10102    =VLOOKUP(A3;sheet1!$A$2:$B$100001;2;FALSE)
   ...  ...         ...
 99999  key4153     =VLOOKUP(A99999;sheet1!$A$2:$B$100001;2;FALSE)
100000  key12818    =VLOOKUP(A100000;sheet1!$A$2:$B$100001;2;FALSE)
100001  key35032    =VLOOKUP(A100001;sheet1!$A$2:$B$100001;2;FALSE)
100002
Run Code Online (Sandbox Code Playgroud)

在我的Core i7 M 620 @ 2.67 GHz上,计算时间约为10分钟

在这种情况下,VLOOKUP是否有更好的性能?

performance vba dictionary excel-vba vlookup

23
推荐指数
3
解决办法
4万
查看次数

标签 统计

dictionary ×1

excel-vba ×1

performance ×1

vba ×1

vlookup ×1