我有以下公式:
=VLOOKUP(VLOOKUP(A1,[Clients]Sales!$B$1:$C$6,2,0),[Ledger]Sheet1!$G$1:$H$6,2,0)
这是有效的,但我有超过10万行数据,需要几分钟才能提取所有结果。
可以加速吗?
VBA是最快的选择吗?
答案 0 :(得分:2)
如果没有样本数据,很难完全回答您的问题,但我认为这正是您所寻找的:How to optimize vlookup for high search count ? (alternatives to VLOOKUP)
如果您不熟悉VBA,我肯定会考虑使用INDEX-MATCH。
希望这有帮助!
答案 1 :(得分:1)
我想你会想要使用索引匹配。它是一对可以复制vlookup的函数,但速度比vlookup快得多。我再也不会因此而使用vookup了。
我认为你想要的是下面的样子。没有看到你的工作簿就没有承诺。
=指数([总帐] Sheet 1中$ H $ 1:!$ H $ 6中,匹配(指数([客户]销售$ C $ 1:$ C $ 6中,匹配(A1,[客户]销售$ B $ 1:$! B $ 6,0)),[总帐] Sheet 1中$ G $ 1:!$ G $ 6,0))
解释是索引从特定列中提取第n个项目。匹配找到恰好是n。