加速 VLOOKUP

Speeding up VLOOKUP

我有以下公式:

=VLOOKUP(VLOOKUP(A1,[Clients]Sales!$B:$C,2,0),[Ledger]Sheet1!$G:$H,2,0)

这是可行的,但我有超过 10 万行数据,提取所有结果需要几分钟时间。

可以加速吗?
VBA 是最快的选择吗?

没有样本数据很难完全回答您的问题,但我认为这就是您要找的:How to optimize vlookup for high search count ? (alternatives to VLOOKUP)

如果您不熟悉 VBA,我肯定会考虑使用 INDEX-MATCH。

希望对您有所帮助!

我想您会想要使用索引匹配。它是一对函数,可以复制vlookup等等,但是比vlookup快很多。由于这个原因,我几乎不再使用 vookup。

我想你想要的看起来像下面这样。没有看到你的工作簿就没有承诺。

=index([Ledger]Sheet1!$H:$H,match(index([Clients]Sales!$C:$C,match(A1,[Clients]Sales!$B:$B,0)),[Ledger]Sheet1!$G:$G,0))

解释是索引从特定列中提取第 n 个项目。匹配找到 n 恰好是什么。